英特爾公佈一系列代碼樣本以幫助優化新款CPU下程序運行表現
英特爾一直更新著一份冗長的”優化參考手冊”,向開發者展示如何為其最新的CPU微架構優化代碼,但伴隨著他們最新手冊的更新,現在有了很多實際的代碼樣本,以緩解學習英特爾優化技術的過程,從而充分利用其最新的處理器。
在開源/Linux支持和其他直接與新硬件相關的關鍵領域之外,英特爾的工程師已經以性能的名義為開源項目做了很多工作,比如經常直接貢獻優化和其他功能,以利用其最新處理器在流行開源項目中的功能,我們已經多次報導過英特爾的這種貢獻。
從這些直接來自英特爾的開源代碼貢獻,以及由他們在項目中維護的開源代碼,如在oneAPI中,獨立開發者已經可以收集到很多關於優化技術和最佳利用其最新的處理器的信息。還有《英特爾64/IA-32架構優化參考手冊》,但作為一個很好的助手,現在該手冊還附有工作(可構建)的代碼樣本,作為學習英特爾代碼優化曲線的一個更容易的初始步驟。
英特爾最新的《優化參考手冊》可以在software.intel.com上找到,而令人興奮的新元素是GitHub上的intel/optimization-manual。
這個新的GitHub資源庫提供了與優化手冊相配套的工作代碼樣本。所有這些代碼樣本都可以通過Linux上的CMake構建系統和使用任何半新的代碼編譯器在大約任何英特爾Haswell CPU或更新的處理器上輕鬆地完整構建。
這些新的代碼樣本主要涉及AVX/AVX2/FMA優化,INT8深度學習推理,以及AVX-512的使用,以便在針對最新的英特爾CPU(如Xeon Scalable Ice Lake、Tiger Lake和Rocket Lake)時獲得實踐。很高興看到英特爾工程師在所有其他開源代碼貢獻和其他活動之外,繼續向開發者社區做出的這些開放性貢獻。