Kernel
GCC 和 AMD 銳龍
https://wiki.gentoo.org/wiki/Ryzen#GCC 說,GCC 6.x 和 GCC 7 都沒有經過 Ryzen 優化。但是,在執行 man gcc-7 時,我清楚地看到 March=znver1 在 GCC-7 中可用。或者這只是一個什麼都不做的虛擬選項?我想使用 march=znver1 讓我的核心針對我的 Ryzen 2500U 進行更多優化。在我的發行版中實際上有 GCC-9 和 GCC-10 可用,我可以從 7 升級到 9 或 10。
znver1
於 2015 年被添加到 GCC中,並包含在 GCC 6.1 中。它總是為 Zen CPU 提供某種程度的調整(參見第一次送出中的成本表),但 Gentoo wiki 引用的 Phoronix 基準表明這在當時並不是特別有效。一般來說,當涉及到對“較新”架構的編譯器支持和優化時,較新版本的編譯器會更好——優化改進很少向後移植,而且它們需要時間在編譯器中進行開發。這包括許多有助於提高為 Zen CPU 生成的程式碼的性能的更新檔(特別是尋找 Jan Hubicka的更新檔)。與往常一樣,在性能方面,您應該對您關心的場景進行基準測試。