gpt4 book ai didi

Java 与 C 简单性能测试

转载 作者:行者123 更新时间:2023-11-30 19:54:19 25 4
gpt4 key购买 nike

我运行一个简单的循环,在 java 和 c 中打印迭代器 (i) 1.000.000 次。

我分别使用 netbeans 和 Visual Studio。

我不关心精度,但在 40 秒左右:

netbeans (java) 已经打印了大约 500.000 个数字而 windows (c) 打印了大约 75.000 个数字

--为什么差别这么大?

我使用的是普通的 intel core2duo(2.0 Ghz) 电脑和 windows7

最佳答案

这似乎是错误的。您能提供一下您的代码吗?

我的版本:

使用 gcc -std=c99 -o itr itr.cgcc 4.5.1 编译的 C 版本

#include <stdio.h>

int main( int argc, char **argv )
{
for ( int i = 0; i < 1000000; i++ )
{
printf("%d\n", i);
}
}

Java 版本编译为 javac Itr.java,其中 javac 1.6.0_20 和 JVM 为:

OpenJDK Runtime Environment (IcedTea6 1.9.1) (ArchLinux-6.b20_1.9.1-1-x86_64)
OpenJDK 64-Bit Server VM (build 17.0-b16, mixed mode)

代码-

class Itr
{
public static void main( String[] av )
{
for ( int i = 0; i < 1000000; i++ )
{
System.out.println(i);
}
}
}

和时间:

time ./itr
// Snip Output //

real 0m1.964s
user 0m0.330s
sys 0m1.477s


time java Itr
// Snip Output //

real 0m5.245s
user 0m2.337s
sys 0m3.023s

测试系统是运行 64 位 ArchLinux 的 Intel Core i5 M520 (@ 2.4GHz)。

关于Java 与 C 简单性能测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4092116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com