基于Linux的苹果电脑 C不一定比Java快
比较了很多语言的运行速度,包括Ruby、Io、 PHP、Python、Lua、Java、Perl、Applescript、TCL、Javascript、OCaml、Ghostscript和C等。数据如下:
语言 | 时间 | 相对速度 |
ocaml compiled 3.09.2 | 0.05 seconds | 1.00 x |
SBCL 1.0.2 | 0.13 seconds | 2.43 x |
C gcc-4.0.1 | 0.14 seconds | 2.67 x |
Java 1.4.2 | 0.39 seconds | 7.49 x |
Lua 5.1 | 1.25 seconds | 23.81 x |
Io 20070410 Vector | 1.37 seconds | 26.13 x |
ocaml bytecode 3.09.2 | 3.75 seconds | 71.48 x |
Python 2.5.1 | 9.99 seconds | 190.33 x |
Ghostscript 8.51 | 11.79 seconds | 224.51 x |
Perl 5.8.6 Optimized | 12.37 seconds | 235.57 x |
TCL 8.4 Optimized | 16.00 seconds | 304.76 x |
Perl 5.8.6 | 21.75 seconds | 414.29 x |
PHP 5.1.4 | 23.10 seconds | 440.05 x |
Javascript SpiderMonkey v1.6 | 31.14 seconds | 593.10 x |
Ruby 1.8.4 | 33.05 seconds | 629.54 x |
Emacs Lisp | 47.00 seconds | 895.24 x |
Applescript | 71.75 seconds | 1366.67 x |
Io 20070410 | 85.44 seconds | 1627.47 x |
可以看到Java几乎比C慢两倍!
但是接着我发现他用的是Java的老版本而且只实验了一次,这实际上并不能够真实地体现Java的速度。
于是我迅速写了点代码运行100三次,并用我认为 “快”的方式运行(其实还有更快的,只是我比较懒没有设定)。结果如下:
$ java -server -XX:CompileThreshold=1 Mandelbrot 2>/dev/null Java Elapsed 2.994 Java Elapsed 1.926 Java Elapsed 1.955 $ gcc -O8 mandelbrot.c $ ./a.out 2>/dev/null C Elapsed 2.03 C Elapsed 2.04 C Elapsed 2.05相关推荐
graseed 2020-10-28
zbkyumlei 2020-10-12
jinhao 2020-09-07
淡风wisdon大大 2020-06-06
yoohsummer 2020-06-01
baike 2020-05-19
hxmilyy 2020-05-11
小灰笔记 2020-03-16
jaybeat 2020-03-13
yinren 2020-03-11
86477414 2020-03-07
小飞侠V 2020-03-05
chenshuixian 2013-06-01
羽化大刀Chrome 2013-05-31
quanhaoH 2013-06-17
IT之家 2020-03-11
SXIAOYI 2020-09-16
impress 2020-08-26
liuqipao 2020-07-07