2023.07.28 13:00

Intel x86指令集演進的下一步:AVX10、APX

ADVERTISEMENT

Intel公司正在為該公司認為是原始 x86 指令集體系結構(ISA)發展的「下一個重要步驟」做準備。這家聖塔克拉拉公司正在擴大通用 x86 操作的暫存器數量,同時推出基於著名的 AVX-512 ISA 的全新、包羅萬象的向量指令集。 

正如Intel公司為開發人員提供的官方網站所解釋的那樣,x86 架構目前廣泛應用於資料中心、個人電腦和其他各種需要性能導向型 CPU 和繁重運算工作量的環境中。最初的 x86 ISA 於 1978 年透過 8086 CPU 推出,只有 8 個 16 位元通用暫存器,後來暫存器的數量增加了一倍,大小增加了四倍。 

ADVERTISEMENT

暫存器在中央處理器中有著至關重要的作用,因為它們儲存著處理器在任何給定時刻都在積極處理的資料位元。因此,Intel公司將高級性能擴展(APX)技術視為 x86 ISA 的重要發展步驟。它擴展了整個 x86 指令集,允許存取更多的暫存器,並引入了新的功能來提高 CPU 的整體性能。 

Intel公司稱,APX 將通用 x86 暫存器的數量增加一倍,從 16 個增加到 32 個,為編譯器提供了更多的資料儲存空間。該公司解釋說,與根據Intel x64 ISA「基準」編譯的二進位程式相比,APX 編譯的代碼「載入次數減少 10%,儲存次數減少 20%以上」。

簡單地說,與複雜的載入和儲存操作相比,暫存器存取速度更快,消耗的動態功耗「大大降低」。在下一代Intel CPU 型號中,效率的提高可能會帶來更高的性能水準。APX 還將擴充 x86 ISA 的條件指令集,該指令集最早是在奔騰 Pro 處理器中透過 CMOV/SET 指令引入的。 

ADVERTISEMENT

這些指令被當今的編譯器廣泛使用,而 APX 似乎提高了Intel CPU 的分支預測能力。據Intel公司稱,程式設計師只需重新編譯程式碼,就可以利用 APX 的功能,因為不需要修改原始碼。APX 再次證明了「x86 可變長度指令編碼」的優勢,新功能透過對底層晶片進行「增量更改」來增強整個 ISA,進而在硬體中解碼指令。 

除 APX 外,未來幾代Intel CPU 還將包含新的 AVX10 ISA。正如官方文件中解釋的那樣,這項技術是Intel在 2013 年首次提出的 AVX-512 向量指令集的全新主要實現。新的 ISA 將在所有Intel CPU 架構上建立一個「通用、融合的向量指令集」,使其在未來的所有處理器上都能得到支援,包括高性能核心(P-cores)和高效核心(E-cores)。 

Intel最初在第12代Core消費級CPU上引入了對AVX-512向量指令的支援,但這些指令只適用於P core單元,後來透過韌體微碼更新意外禁用了這些指令。事實證明,x86 ISA 的向量擴展在試圖模擬複雜的現代遊戲機架構(如 PlayStation 3 (RPCS3))的開發人員中非常受歡迎。 

ADVERTISEMENT

x86 ISA 的 AVX10 擴展將支持以前引入的所有 AVX(向量)指令擴展,最大向量暫存器長度為 256 位元。最初的 AVX10 版本(AVX10.1)不包含任何新指令;其唯一目的是方便從 AVX-512 過渡到適當的、全核相容(P core、E core)的 AVX10 實現(即 AVX10.2)。

ADVERTISEMENT