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
ネットワークカメラ搭載の「スマート街路灯」で通行状況を分析、飲食店の来客予測に活用 NECが実験
企業・業界動向
2021-03-17 19:53
ツルハホールディングス、CO2排出量可視化・削減サービス「アスエネ」導入
IT関連
2023-12-26 18:37
プチプチが進化! 手でスパッと切れる「スパスパ」誕生
くらテク
2021-07-07 07:49
産業用制御システム攻撃の歴史から学ぶ–サイバーセキュリティ4つの教訓
IT関連
2022-11-25 07:53
Microsoft、サティア・ナデラCEOを兼任会長に選出 現会長は主任取締役に
企業・業界動向
2021-06-18 17:46
富士通、電通、ISID、3つのバリューチェーン変革に向けて協業
IT関連
2022-04-27 15:34
センサーや電源などのユニットを組み合わせてIoTデバイスを開発できるハードウェア「PILEz」登場
企業・業界動向
2021-05-29 05:19
人工の皮膚をロボットに–その可能性とさまざまな取り組み
IT関連
2021-06-22 13:50
NTTのVR空間でバーチャル即売会 VTuber・九条林檎などが160店舗を出店
企業・業界動向
2021-04-17 07:57
グローバルのクラウドインフラ市場、市場の成長率が鈍化する中でAWSがシェア30%超を維持、AzureとGoogle Cloudは堅調。2022年第4四半期、Synergy ResearchとCanalysの調査結果
AWS
2023-02-14 17:07
持続可能な世界とテクノロジー–解決すべき課題と今後の機会
IT関連
2023-02-22 22:17
「Android」、9月のセキュリティアップデートでゼロデイ脆弱性などを修正
IT関連
2023-09-09 11:15
「ポスト量子暗号アライアンス」をAWS、Google、NVIDIA、シスコ、IBMらが設立。ポスト量子暗号の採用促進のため
AWS
2024-02-16 02:50
Visional、ビズリーチの人材活用システムにダッシュボード機能を追加
IT関連
2023-06-20 11:16