CPU/GPU真融合!Intel新酷睿權威評測
第三章/第四節(jié) SandyBridge架構解析:新增AVX高級矢量擴展指令集
Westmere相比Nehalem,唯一的改進就是新增AES加密解密指令集,在特定應用下速度提升非常顯著,但由于一般人很少用到加密和解密應用,因此這一改進幾乎可以被忽視了。
現(xiàn)在SandyBridge相比Westmere,在AES指令集的基礎上,又新增了AVX(高級矢量擴展)指令集,這個指令集就非同一般了,Intel打算用它來逐步取代已經(jīng)服役幾十年的SSE(單指令多數(shù)據(jù)流式擴展)指令集,AVX指令集的重要性可見一斑!
所謂的矢量,就是帶有方向的標量……在數(shù)學上的表現(xiàn)就是多個參數(shù)的代數(shù)式,也就是多個標量的集合。為了更好地表示多個標量,AVX高級矢量擴展將原有的128位浮點指令擴展到了256位,可以同時處理8個32位(4字節(jié))的浮點數(shù)或者一個256位的數(shù):

AVX指令集是和SandyBridge微架構緊密結合的,因此,微架構的浮點寄存器也要從128位擴展到256位,此外,Load單元也要適應一次載入256位的能力,SandyBridge沒有直接擴展原有Load單元的位寬,而是通過增加了一個Load單元來達到256bit Load的能力,如下圖所示:

可以看到,在0、1、5端口都增加了256位寬度AVX指令執(zhí)行單元。



最后,Intel提到了,由于128位SSE指令與256位AVX指令位寬不同,在混合編碼的時候,指令切換需要進行額外的寄存器高位保留操作,因此混用SSE/AVX將會導致性能損失。應盡量向新指令集進行遷移。

最后,Intel給出了在如前所述的4種常見運算下的AVX指令集加速比(AVX vs SSE over Sandy Bridge)??梢钥闯?,在硬件環(huán)境不變的情況下,如果軟件支持AVX指令集的話,速度提升可達1.5-2.5倍之多!

看來Intel是鐵定決心要改進CPU的浮點運算能力,SandyBridge的下一代IVYBridge將會新增FMA指令集,F(xiàn)MA是同時進行一個乘法和一個加法的運算,在圖形操作上很是常見,相信關注GPU圖形技術的朋友們已經(jīng)會比較熟悉。看得出來未來的處理器,CPU與GPU之間的界限將會非常模糊了。
關注我們


