性能提示 多年來,我的同事 Sanjay Ghemawat 和我對各種代碼的性能調優進行了相當多的研究。我們幾年前寫了一份內部的性能提示文檔,以識別一些通用原則,最近我們已經發布了它的外部版本。 我們非常希望能收到您的任何反饋! 完整文檔請參閱:
我們嘗試提供各種技術的具體範例。有些是對一組性能改進的高層次描述,例如這組來自2001年的變更:
其他是一些特定的小段代碼,展示了一種技術:
許多技術可能對讀者來說是熟悉的,但我們認為將從高層次的算法改進到低層次的性能優化的提示和技巧集合在一起是很不錯的。
Sanjay 和我在寫這個的時候也很有趣,深入探討了幾十年來的變更列表,尋找我們使用過的有趣技術,並試圖將它們歸類為更高層次的主題。
公開版本是內部版本的某種清理過的版本。Google 的人員可以在 go/performance-hints 找到內部版本,該鏈接指向我們源代碼庫系統中的實際變更列表。
內部版本還包含了更多敏感的代碼示例(例如,對TPU編譯器後端的更改),這些我們無法在外部版本中包含。
40