Go 開発チームと基本的なアルゴリズムのテストによると、Go 言語と C 言語のパフォーマンスの差は約 10% ~ 20% です。公式のパフォーマンス基準はありませんが、他の言語と比較してすでに非常に優れたパフォーマンスを示しています。
Javaや Scala で使用される JVM、 C#や VB.NET で使用される .NET CLR など、現在人気のある言語のほとんどは仮想マシン上で実行されます。仮想マシンのパフォーマンスは大幅に向上しましたが、JIT コンパイラーとスクリプト言語インタープリターを使用するプログラミング言語 (Ruby、 Python 、Perl、およびJavaScript ) は、パフォーマンスの点で C およびC++にさえ勝つことができません。 。
ここでは、外国のプログラミング言語パフォーマンス テスト Web サイト http://benchmarksgame.alioth.debian.org/ がテスト ベンチマークおよびデータ ソースとして使用されます。この Web サイトでは、最新の言語バージョンといくつかの一般的なアルゴリズムを使用して、一般的なプログラミング言語のパフォーマンスを比較できます。
C(gcc)、C++、Java、JavaScript、Go 言語のテストに合格しました。性能比較は下表のとおりであり、表中のデータの単位は秒であり、数値が小さいほど走行性能が優れていることを示します。
プログラミング言語↓ / テストケース→ | 逆補数 | ピディジット | ファンクク・リダックス | 速い | スペクトルノルム | n体 | k-ヌクレオチド | マンデルブロ | 二分木 | 正規表現-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 | 9.15 | 2.32 | 4.25 | 22.56 | 8.38 | 6.08 | 8.58 | 10.38 |
JavaScript | 4.3 | 該当なし | 81.49 | 9.79 | 16.17 | 28.74 | 66.07 | 19.04 | 53.64 | 4.44 |
上の表から、Go 言語はパフォーマンスの点で Java 言語に近いことがわかります。テストケースによっては、長年最適化されてきた Java 言語には及ばないものの、結局のところ、Java 言語は言語は長年にわたる蓄積と最適化を経験してきました。 Go 言語は、将来のバージョンでの継続的なバージョン最適化を通じてシングルコアのパフォーマンスを向上させます。
「 Go 言語のパフォーマンスはどのくらいですか?」についてわかりやすく解説!絶対に観るべきベスト2動画
【初心者必見!】Go言語とは?できることや学ぶメリット・将来性について解説
【たった1時間で学べる】Go言語のプログラミング初心者向けの超入門講座【文字書き起こし、ソースコードも完全無料!】