パフォーマンスのヒント 長年にわたり、同僚のサンジャイ・ゲマワットと私は様々なコードのパフォーマンス調整にかなり取り組んできました。 数年前に社内のパフォーマンスヒント文書を作成し、一般的な原則を特定する方法として、最近そのバージョンを外部に公開しました。 どんなフィードバックでもぜひお聞かせください! 全文はこちらでご覧いただけます:
さまざまな技術の具体的な例を挙げようとしました。 いくつかはパフォーマンス改善の高レベルな説明で、例えば2001年の変更点群です:
他には、技術を示す特定の小さなコードの断片もあります:
多くの技術は読者にはおそらく知られているでしょうが、高レベルのアルゴリズム改善から低レベルのパフォーマー最適化まで、さまざまなヒントやトリックを集めておけば良いと感じました。
サンジェイと私は、何十年にもわたってチェンジリストの奥深くを掘り下げ、使った面白い技法を探し出し、それらをより高次のテーマにまとめていこうと楽しんでいました。
公開版は内部版のやや洗練されたバージョンです。 Googleの関係者はgo/performance-hintsで内部バージョンを入手でき、ソースコードリポジトリシステム内の実際の変更リストへのリンクがあります。
内部版には、外部版には含められないより機密性の高いコードの例(例:TPUコンパイラのバックエンドの変更)も含まれています。
44