SIMD是Single-instruction multiple-data的縮寫。意思是通過一條指令就能夠?qū)θ舾晒P數(shù)據(jù)進(jìn)行處理運(yùn)算。這種指令對(duì)于整數(shù)型數(shù)組運(yùn)算,或者是圖象像素點(diǎn)運(yùn)算都極為有利。為了支持這種處理模式,Intel推出了一系列的技術(shù)和指令集,這其中包括:
MMX技術(shù)
SSE擴(kuò)展指令集
SSE2擴(kuò)展指令集
SSE3擴(kuò)展指令集
SSE3補(bǔ)充指令集
SSE4擴(kuò)展指令集
所有的技術(shù)或是指令集都提供了若干指令用來支持SIMD運(yùn)算。其運(yùn)算對(duì)象可以是整數(shù)型數(shù)據(jù)或者是浮點(diǎn)數(shù)據(jù)。
對(duì)于SIMD的整數(shù)數(shù)據(jù)運(yùn)算,可以使用64位MMX寄存器,或者是128位XMM寄存器。而對(duì)于SIMD的浮點(diǎn)數(shù)據(jù)運(yùn)算,則只能是喲很難過128位的XMM寄存器。
在奔騰II時(shí)期,Intel就推出了MMX技術(shù),該技術(shù)包括了MMX指令集以及MMX寄存器。MMX寄存器為64位寬度,可以一次性處理8個(gè)獨(dú)立字節(jié)的整數(shù)型運(yùn)算,或者是4個(gè)獨(dú)立16位的整數(shù)型運(yùn)算,或者兩個(gè)獨(dú)立的32位整數(shù)型運(yùn)算,或者一個(gè)64位整數(shù)型運(yùn)算。
當(dāng)?shù)搅吮简vIII時(shí)期,Intel又推出了SSE擴(kuò)展指令集。這些指令可以在XMM寄存器中處理單精度浮點(diǎn)數(shù)據(jù),或者在MMX寄存器中處理整數(shù)型數(shù)據(jù)。部分SSE指令提供了對(duì)狀態(tài),緩存(Cache)和內(nèi)存訪問順序等方面的控制。SSE指令集對(duì)于圖象處理方面進(jìn)行了補(bǔ)強(qiáng)。例如3D建模,渲染和視頻解碼等方面。
Intel的奔騰4和至強(qiáng)(Xeon)系列處理器推出后,又增加了SSE2擴(kuò)展指令集。這些指令可以使用相同的XMM寄存器處理雙精度浮點(diǎn)數(shù)據(jù)和整數(shù)型數(shù)據(jù)。這樣一來,原本只能處理64位整數(shù)型數(shù)據(jù)的能力得到了提升。除此之外,在對(duì)緩存以及內(nèi)存訪問順序方面,SSE2也提供新的支持。
SSE3擴(kuò)展指令集伴隨著奔騰4處理器超線程(Hyper-Threading)技術(shù)一起發(fā)布。SSE3擴(kuò)展指令集增加了13個(gè)新指令用來提高SIMD相關(guān)運(yùn)算的性能。
SSSE3擴(kuò)展指令集增加了32個(gè)指令用來提升SIMD對(duì)于整數(shù)型數(shù)據(jù)運(yùn)算的性能,最早在Intel的Xeon 5100系列和Intel Core 2處理器上使用。
SSE4擴(kuò)展指令集又增加了54條指令。其中47條指令被稱為SSE4.1,剩下7條指令被稱為SSE4.2。
進(jìn)入到Intel 64架構(gòu)后,128位的XMM寄存器由原來的8個(gè),增加到了16個(gè)。
再往后,Intel推出了AVX(Advacned Vector Extensions)技術(shù)。相比傳統(tǒng)的SIMD相關(guān)運(yùn)算,AVX提供了更為強(qiáng)大的架構(gòu)支持。主要特點(diǎn)如下:
提供了256位的YMM寄存器,用來擴(kuò)展原本的XMM寄存器。
相比128為XMM寄存器來說,兩倍效能提升(如果執(zhí)行時(shí)間一致的話)
相比傳統(tǒng)SIMD指令,AVX指令能夠支持3操作數(shù)運(yùn)算,這對(duì)于編程來說,提供更好的靈活性。如果只有兩個(gè)操作數(shù),勢必有一個(gè)操作數(shù)中的內(nèi)容將會(huì)被運(yùn)算結(jié)果替換掉。
-
寄存器
+關(guān)注
關(guān)注
31文章
5336瀏覽量
120230 -
cpu
+關(guān)注
關(guān)注
68文章
10854瀏覽量
211574 -
SIMD
+關(guān)注
關(guān)注
0文章
33瀏覽量
10289
原文標(biāo)題:SIMD:為什么Intel CPU選擇了它?
文章出處:【微信號(hào):SSDFans,微信公眾號(hào):SSDFans】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論