1997年Intel公司推出了多媒體擴展指令集MMX(MultiMedia eXtensions),它包括57條多媒體指令。MMX指令主要用於增強CPU對多媒體信息的處理能力,提高CPU處理3D圖形、視頻和音頻信息的能力。
SSE指令集
Streaming SIMD Extensions
由於MMX指令並沒有帶來3D游戲性能的顯著提升,1999年Intel公司在Pentium III CPU產品中推出了數據流單指令序列擴展指令(SSE)。SSE兼容MMX指令,它可以通過SIMD(單指令多數據技術)和單時鐘周期並行處理多個浮點來有效地提高浮點運算速度。
在MMX指令集中,借用了浮點處理器的8個寄存器,這樣導致了浮點運算速度降低。而在SSE指令集推出時,Intel公司在Pentium III CPU中增加了8個128位的SSE指令專用寄存器。而且SSE指令寄存器可以全速運行,保證了與浮點運算的並行性。
SSE2指令集
在Pentium 4 CPU中,Intel公司開發了新指令集SSE2。這一次新開發的SSE2指令一共144條,包括浮點SIMD指令、整形SIMD指令、SIMD浮點和整形數據之間轉換、數據在MMX寄存器中轉換等幾大部分。其中重要的改進包括引入新的數據格式,如:128位SIMD整數運算和64位雙精度浮點運算等。為了更好地利用高速緩存。另外,在Pentium 4中還新增加了幾條緩存指令,允許程序員控制已經緩存過的數據。
SSE3指令集