Intel AVX-512指令集復活小核心終於也能跑了
AVX-512指令集,曾經是Intel的殺手鐧,但是隨著12代酷睿引入大小核混合架構,E核無法支持AVX-512,不得不整體屏蔽,反倒是AMD Zen4架構加入了AVX-512,形勢瞬間逆轉。現在,Intel公佈了全新的“APX”(高級性能執行),以及全新的指令集“AVX10”(高級指令擴展10),第一次可以讓P大核、E小核都支持AVX-512!
基本層面上,大核可以完整執行256/512位指令,小核則只能執行融合256位指令(可以粗略理解為支持到AVX-256)。
更深層面上,AVX10可以說是AVX-512的超集,不但包含所有的AVX-512指令,對應的功能標識為AVX-512VL,還有256位的矢量寄存器、八個32位的掩碼寄存器、支持嵌入式舍入的新版256位指令。
其中,P大核可以可以使用512位矢量,E小核則限制在256位矢量長度。
AVX10推出後,AVX-512也將徹底凍結,不會再有變化,未來對於它的使用都通過AVX10來實現。
Intel強調,現有應用基於AVX-512、AVX10的性能是一樣的,至少在同等矢量長度下沒有區別。
AVX2編譯的程序,重新編譯支持AVX10,會獲得性能提升,且無需再次對軟件調優。
對矢量寄存器壓力敏感的AVX2程序,獲得的性能提升最明顯,這要感謝額外的16個矢量寄存器和新的指令。
高度線程化的矢量化應用在E核上運行時,可獲得更高的總吞吐量。
Intel下一代消費級酷睿處理器是Meteor Lake,依然不會有AVX-512,再下一代的Arrow Lake是否會首次加入AVX10,尚不確認。
今年底,Intel將推出第五代可擴展至強Emerald Rapids,只是現有第四代Sapphire Rapids的升級版,因此要到明年的第六代至強Granite Rapids,才會加入AVX10。
至於明年首款純小核設計的Sierra Forest,是否也會加入AVX10,暫時不清楚。
不過,AVX10的落地分為兩步,第一步是AVX10.1,用於六代至強Granite Rapids,僅支持512位矢量指令,而不支持融合256位矢量指令。
第二步是AVX10.2,應該用於七代至強Clearwater Forest,加入融合256位矢量指令,並加入其他新功能,比如AI數據類型和轉換、數據轉移優化等等。