相关疑难解决方法(0)

什么是更快 - Java或C#(或旧的C)?

我目前正在决定建立一个科学计算产品的平台,并决定使用Core2 Quad CPU上的英特尔编译器的C#,Java或普通C.它主要是整数运算.

到目前为止,我的基准测试显示Java和C相互之间的差距很大,而.NET/C#的速度约为5% - 但是我的一些同事声称,如果给定足够的时间,那么具有正确优化的.NET将会击败这两者让JIT做它的工作.

我总是认为JIT会在应用程序启动后的几分钟内完成它的工作(在我的情况下可能只需几秒钟,因为它主要是紧环),所以我不确定是否相信它们

任何人都可以了解情况吗?.NET会打败Java吗?(或者我最好只是坚持使用C?).

代码是高度多线程的,数据集的大小是几TB.

在这种情况下,Haskell/Erlang等不是选项,因为有大量现有的遗留C代码将被移植到新系统,而将C移植到Java/C#比Haskell或Erlang简单得多.(当然,除非这些提供了显着的加速).

编辑:我们正在考虑转向C#或Java,因为理论上它们可能更快.我们可以减少每一个处理时间,每年为我们节省数万美元.在这一点上,我们只是试图评估C,Java或c#是否会更快.

.net c c# java performance

26
推荐指数
7
解决办法
1万
查看次数

为什么我会看到使用本机代码增加约20%的速度?

知道为什么这段代码:

extern "C" __declspec(dllexport) void Transform(double x[], double y[], int iterations, bool forward)
{
    long n, i, i1, j, k, i2, l, l1, l2;
    double c1, c2, tx, ty, t1, t2, u1, u2, z;

    /* Calculate the number of points */
    n = (long)pow((double)2, (double)iterations);

    /* Do the bit reversal */
    i2 = n >> 1;
    j = 0;
    for (i = 0; i < n - 1; ++i)
    {
        if (i < j)
        {
            tx = x[i];
            ty = …
Run Code Online (Sandbox Code Playgroud)

c# winforms

24
推荐指数
1
解决办法
4977
查看次数

标签 统计

c# ×2

.net ×1

c ×1

java ×1

performance ×1

winforms ×1