阅读:0

Go语言的性能如何?

这里以国外的一个编程语言性能测试网站 http://benchmarksgame.alioth.debian.org/ 为测试基准和数据源。这个网站可以对常见的编程语言进行性能比较,网站使用都是最新的语言版本和常见的一些算法。

进行测试的编程语言包括:C(gcc)、C++、Java、JavaScript 和 Go语言。性能比较如下表所示,表中数据的单位为秒,数值越小表明运行性能越好。

常见编程语言的运行性能比较
编程语言↓ / 测试用例→ reverse-complement pidigits fannkuch-redux fasta spectral-norm n-body k-nucleotide mandelbrot binary-trees regex-redux
C语言 0.42 1.73 8.97 1.33 1.99 9.96 5.38 1.65 2.38 1.45
C++ 0.6 1.89 10.35 1.48 1.99 9.31 7.18 1.73 2.36 17.14
Go 0.49 2.02 14.49 2.17 3.96 21.47 14.79 5.46 35.18 29.29
Java 1.13 3.12 15.09 2.32 4.25 22.56 8.38 6.08 8.58 10.38
JavaScript 4.3 N/A 81.49 9.79 16.17 28.74 66.07 19.04 53.64 4.44

可以看出,Go 语言在性能上更接近于 Java 语言,虽然在某些测试用例上不如经过多年优化的 Java 语言,但毕竟 Java 语言已经经历了多年的积累和优化。Go 语言在未来的版本中会通过不断的版本优化提高单核运行性能。