C/C++已经统治系统编程好久,除了ObjectiveC之外语言都无法得到很高的存眷。有人用多种系统级语言编写了同样的舆图生成东西来测试他们的机能,包罗D(DMD,LDC,GDC)、Go(GCC-Go,6g)、Haskell(GHC)和Rust。对比C/C++,这些语言都原生支持了诸如垃圾接纳这些高级特性,也因此无一能到达C/C++的运行速度。
个中表示最好的是基于LLVM的D语言编译器LDC,与同样基于LLVM的C编译器Clang对比,可以到达它96%的速度。其次是基于LLVM的Rust编译器,到达了89%。因为LLVM编译的优化做的太好,纵然GCC都只能到达Clang 72%。另一个令人惊奇的功效是,基于JVM的Scala竟然能到达Clang70%的速度。险些相当于GCC。
Compiler | Speed(s) | %Fastest |
Clang | 0.280 | 100% |
LDC | 0.292 | 96% |
Rustc | 0.316 | 89% |
Scala | 0.375 | 75% |
GCC | 0.390 | 72% |
LLVM-GHC | 0.428 | 65% |
6g | 0.544 | 51% |
GHC | 0.546 | 51% |
DMD | 0.640 | 37% |
GCCGO | 0.850 | 33% |