Go言語、実行時プロファイル情報による最適化「Profile-guided optimization」が正式機能に。Go 1.21リリース

今回は「Go言語、実行時プロファイル情報による最適化「Profile-guided optimization」が正式機能に。Go 1.21リリース」についてご紹介します。

関連ワード (以前、何度呼、使用頻度等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


Go言語の開発チームは8月8日にリリースしたGo 1.21で、実行時のプロファイル情報を用いてコンパイルを最適化し、実行速度の改善を図る「Profile-guided optimization」機能が正式版になったことを明らかにしました。

fig

Go言語のコンパイルはソースコードの静的な解析を基にして高速なバイナリを生成するような最適化が行われています。

今回、正式機能となった「Profile-guided optimization」は、バイナリ実行時にどの関数が何度呼ばれたのか、メモリがどのように使用されたかなどのプロファイル情報を基にコンパイルを最適化することで、より高速なバイナリを生成する手法です。

具体的には、何度も呼ばれた関数をインライン展開することで関数呼び出しのオーバーヘッドをなくす、変数の使用頻度によってレジスタへの割り当てを変更する、ループを展開する、などの処理がコンパイル時に行われます。

これによりGo言語のバイナリの実行性能は2%から7%程度向上すると説明されています。

こうした実行時のプロファイル情報を基にしたコンパイルの最適化手法としては以前から存在しており、例えばRustにはすでにProfile-guided optimization機能がありますし、GoogleはChromeブラウザをProfile-guided optimizationによって15%程度高速化したことを2016年に明らかにしています。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
今度はRobinhood株がおかしくなった
フィンテック
2021-08-06 15:32
熱プロセスも粉末も使わずコスト削減、金属3DプリントのFabric8Labsが約21.2億円調達
ハードウェア
2021-07-22 03:03
生成AI、世界経済に年間620兆円の価値をもたらす可能性–マッキンゼー最新報告
IT関連
2023-07-12 14:44
InstagramとFacebookの「いいね」数の非表示設定が可能に
IT関連
2021-05-28 20:35
5つのトレンドでデータ管理とアナリティクスの2023年を展望する
IT関連
2022-12-31 02:58
ウルシステムズ、長谷工グループの新しいコミュニケーションサービス構築を支援
IT関連
2022-09-02 00:04
さまざまな場面に普及するデジタルサイネージの現在
IT関連
2022-07-12 19:06
NEC、データ活用人材を強化する「dotData ビジネスアナリティクス人材育成サービス」提供へ
IT関連
2024-03-29 22:17
NFTゲーム「Axie Infinity」のRoninハッキング、北朝鮮のLazarusが関与–米当局
IT関連
2022-04-19 06:34
「Linux」のデータを「Deja Dup」を使ってバックアップするには
IT関連
2023-07-07 07:31
デル、全ての企業をインテリジェンス製造カンパニーに–「Dell AI Factory」発表
IT関連
2024-05-23 12:29
IoTプロジェクトでの最優先課題は「専門人材の育成」–ソラコム調査
IT関連
2024-04-25 00:01
インドネシアのクラウドキッチンHangryが約14億円調達、レストラン展開も
シェアリングエコノミー
2021-05-05 01:29
Apple Musicのロスレスとハイレゾ、AirPodsでは再生できず AirPods ProもAirPods Maxも
イラスト・デザイン
2021-05-19 14:29