SSE4指令集讓45nm Penryn處理器增加了2個不同的32Bit向量整數乘法運算單元,並加入8位無符號(Unsigned)最小值及最大值運算,以及16Bit及32Bit有符號 (Signed) 運算。在面對支持SSE4指令集的軟體時,可以有效的改善編譯器效率及提高向量化整數及單精度代碼的運算能力。同時,SSE4改良插入、提取、尋找、離散、跨步負載及存儲等動作,令向量運算進一步專門化
據了解,在進行視頻編碼時需要進行動態預測(Motion Estimation)及差分編碼方式去除相鄰2張影像之相關性,這是一個非常複雜的運算動作。在沒有SSE4指令集時,完成一個步驟需要以下指令語句。
for (int moveblock=0;moveblock<16;moveblock++)
for(int line=0; line<16; line++) // Does the 16 pixels large in 4 iteration
{
int i=0;
sum0+=abs( pBlock1[j]-pBlock2)+abs(pBlock1[j+1]-pBlock2[i+1])+abs(pBlock1[j+2]-pBlock2[i+2])+abs(pBlock1[j+3]-pBlock2[i+3]); // Compare with 0 pixel offset
sum1+=abs(pBlock1[j+1]-pBlock2)+abs(pBlock1[j+2]-pBlock2[i+1])+abs(pBlock1[j+3]-pBlock2[i+2])+abs(pBlock1[j+4]-pBlock2[i+3]); // Compare with 1 pixel offset
sum2+=abs(pBlock1[j+2]-pBlock2)+abs(pBlock1[j+3]-pBlock2[i+1])+abs(pBlock1[j+4]-pBlock2[i+2])+abs(pBlock1[j+5]-pBlock2[i+3]); // Compare with 2 pixel offset
sum3+=abs(pBlock1[j+3]-pBlock2)+abs(pBlock1[j+4]-pBlock2[i+1])+abs(pBlock1[j+5]-pBlock2[i+2])+abs(pBlock1[j+6]-pBlock2[i+3]); // Compare with 3 pixel offset
sum4+=abs(pBlock1[j+4]-pBlock2)+abs(pBlock1[j+5]-pBlock2[i+1])+abs(pBlock1[j+6]-pBlock2[i+2])+abs(pBlock1[j+7]-pBlock2[i+3]); // Compare with 4 pixel offset
sum5+=abs(pBlock1[j+5]-pBlock2)+abs(pBlock1[j+6]-pBlock2[i+1])+abs(pBlock1[j+7]-pBlock2[i+2])+abs(pBlock1[j+8]-pBlock2[i+3]); // Compare with 5 pixel offset
sum6+=abs(pBlock1[j+6]-pBlock2)+abs(pBlock1[j+7]-pBlock2[i+1])+abs(pBlock1[j+8]-pBlock2[i+2])+abs(pBlock1[j+9]-pBlock2[i+3]); // Compare with 6 pixel offset
sum7+=abs(pBlock1[j+7]-pBlock2)+abs(pBlock1[j+8]-pBlock2[i+1])+abs(pBlock1[j+9]-pBlock2[i+2])+abs(pBlock1[j+10]-pBlock2[i+3]); // Compare with 7 pixel offset
i=4;
j=moveblock+4;
…
… }
}
一大串的指令極度浪費處理器資源,而在支持SSE4指令集的處理器上,只需要採用4 SAD運算指令:
MPSADBW xmm0,xmm1,0
便完全代替了以上繁複的指令串,大幅提升動態預測(Motion Estimation)及差分編碼的運算速度。
相關詞條
-
SSE4.1
SSE4加入了6條浮點型點積運算指令,支持單精度、雙精度浮點運算及浮點產生操作,且IEEE 754指令 (Nearest, -Inf, +Inf, an...
SSE4.1基本介紹 SSE4.1具體介紹 -
SSE4指令集
SSE(Streaming SIMD Extensions,單指令多數據流擴展)指令集是Intel在Pentium III處理器中率先推出的。其實,早在...
簡介 指令數目 版本 內容 指令集架構 -
指令集
指令集是存儲在CPU內部,對CPU運算進行指導和最佳化的硬程式。擁有這些指令集,CPU就可以更高效地運行。Intel主要有x86,EM64T,MMX,SS...
-
SSE 4.1
相關的圖形製作是具有相當深遠的意義。除此之外,SSE4.1指令集還加入了串...重要作用。 SSE4.1指令集指令集主要是針對圖形及視頻編碼方面進行了...順著這個思路,編輯決定把集成有SSE4.1指令集的Penryn核心與傳統...
SSE4.1概述 SSE4.1指令集 SSE4.1指令集效能對比測試 -
SSE 4.2
受益。 SSE4指令集分為兩個版本:4.1和4.2,SSE4.1版本... SEE4.2簡介SSE4.2指令集新增的部分主要包括STTNI... Accelerators)兩個部分。以往每一次的SSE指令集更新都主要體現於多媒體指令集方面...
SEE4.2簡介 SSE 4.2報價 SEE4指令集家族介紹 -
Intel Core 2
簡介“酷睿”是一款領先節能的新型微架構,設計的出發點是提供卓然出眾的性能和能效,提高每瓦特性能,也就是所謂的能效比。早期的酷睿是...
簡介 技術特點 現有產品 處理器列表 命名規則 -
多媒體指令
,指令集是提高微處理器效率的最有效工具之一。從現階段的主流體系結構講,指令集可分為複雜指令集和精簡指令集兩部分,而從具體運用看,如Intel的MMX...指令集,分別增強了CPU的多媒體、圖形圖象和Internet等的處理能力...
精簡指令集的運用 CPU的擴展指令集 參考資料 -
酷睿i7
5.4-8MB共享三級快取6.SSE 4.2指令集(七條新指令)7.超執行緒技術...(高級加密標準)指令集13.提升虛擬機性能(根據Intel官方數據顯示...有著如下幾個最重要的新增功能。1.SSE4.1指令集(47個新SSE指令...
產品介紹 歷代版本 技術參數 移動版 特性詳解 -
SSE4.2
。SSE4.2完整的實現了SSE4指令集,相對於SSE4.1加入了7條新指令...了)CPU 指令集,最早套用在PIII系列CPU上。現在已經得到了Intel...等系列CPU的支持。而更新的SSE2指令集僅得到了P4系列CPU的支持...
簡介