SSE4 (Streaming SIMD Extensions 4) - це набір SIMD-інструкцій для процесорів архітектури x86-64. Набір інструкцій було анонсовано були 27 вересня 2006 року. Самі інструкції були реалізовані в процесорах Intel Core та AMD K10. В SSE4 налічується 54 інструкцій, розділених на дві основні категорії: векторизація операцій для прискорення роботи з медіа, та для обробки тексту.
Intel використовувала маркетингову назву HD Boost для інструкцій SSE4.
Набори інструкцій SSE4
SSE4 Складається з 54 інструкцій. З них 47 відносять до SSE4.1, вони були реалізовані в мікрокархітектурі Peryn, а решта 7 команд (SSE4.2) з'явились лише в процесорах з мікроархитектурою Nehalem.
В AMD процесорах набір інструкцій називається SSE4a, був реалізований в процесорах мікроархітектури Barcelona. Він містить в собі 4 інструкції що відсутні у наборі SSE4.1 від intel. Повний набір інструкцій SSE4 (SSE4.1+SSE4.2) лише в процесорах FX на базі мікроархітектури Bulldozer.
Інструкції
SSE4.1
MPSADBW
Multiple Packed Sums of Absolute Difference. Рахує суму абсолютних різниць восьми значень, по чотири суми за раз (тобто |x0−y0|+|x1−y1|+|x2−y2|+|x3−y3|, |x0−y1|+|x1−y2|+|x2−y3|+|x3−y4|, ..., |x0−y7|+|x1−y8|+|x2−y9|+|x3−y10|). Така операція важлива при роботі деяких HD кодеків,і дозволяє обробити блок зображення 8х8 за декілька циклів процесора.PHMINPOSUW
Packed Horizontal Word Minimum пошук серед 16 бітових беззнакових цілих, такого що має мінімальне значення.PMULDQ
Multiply Packed Signed Dword Integers Множення 32 бітових знакових цілих та повертає результат в 64бітове ціле.PMULLD
Multiply Packed Signed Dword Integers and Store Low Result. Множення 32-бітових знакових цілих та повертає в результат молодшу 32бітну частину.DPPS
,DPPD
Dot Product of Packed Single/Double Precision Floating-Point Values - скалярне множення 32 та 64 бітових цілих.- BLENDPS, BLENDPD, BLENDVPS, BLENDVPD, PBLENDVB, PBLENDW
PMINSB
,PMAXSB
,PMINUW
,PMAXUW
,PMINUD
,PMAXUD
,PMINSD
,PMAXSD
- мінімум,максимум для різних типів.ROUNDPS
,ROUNDSS
,ROUNDPD
,ROUNDSD
- округлення числа з рухомою комою в ціле.- INSERTPS, PINSRB, PINSRD/PINSRQ, EXTRACTPS, PEXTRB, PEXTRD/PEXTRQ
PMOVSXBW
,PMOVZXBW
,PMOVSXBD
,PMOVZXBD
,PMOVSXBQ
,PMOVZXBQ
,PMOVSXWD
,PMOVZXWD
,PMOVSXWQ
,PMOVZXWQ
,PMOVSXDQ
,PMOVZXDQ
Packed Move with Sign/Zero ExtendPTEST
Logical ComparePCMPEQQ
Compare Packed Qword Data for Equal порівняння 64 бітових значень на рівність та повернення 64бітових масокPACKUSDW
Pack with Unsigned Saturation Пакування 32бітних знакових цілих в 16бітні беззнакові з насиченням (буде обрізано до максимального значення - 65536).MOVNTDQA
Load Double Quadword Non-Temporal Aligned Hint - інструкція для ефективного читання даних в SSE-регістр.
SSE4.2
Інструкції для порівняння рядків:
PCMPESTRI
Packed Compare Explicit Length Strings, Return IndexPCMPESTRM
Packed Compare Explicit Length Strings, Return MaskPCMPISTRI
Packed Compare Implicit Length Strings, Return Index Порівнюють дані як .PCMPISTRM
Packed Compare Implicit Length Strings, Return MaskPCMPGTQ
- Порівняння спакованого набору 64бітових даних на "більше ніж"POPCNT
- Рахує кількість бітів що дорівнюють одиниці.LZCNT
- рахує кількість провідних нулів.- CRC32 - пришвидшує вирахування CRC32
SSE4a
EXTRQ
/INSERTQ
MOVNTSD
/MOVNTSS
Примітки
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
SSE4 Streaming SIMD Extensions 4 ce nabir SIMD instrukcij dlya procesoriv arhitekturi x86 64 Nabir instrukcij bulo anonsovano buli 27 veresnya 2006 roku Sami instrukciyi buli realizovani v procesorah Intel Core ta AMD K10 V SSE4 nalichuyetsya 54 instrukcij rozdilenih na dvi osnovni kategoriyi vektorizaciya operacij dlya priskorennya roboti z media ta dlya obrobki tekstu Intel vikoristovuvala marketingovu nazvu HD Boost dlya instrukcij SSE4 Nabori instrukcij SSE4SSE4 Skladayetsya z 54 instrukcij Z nih 47 vidnosyat do SSE4 1 voni buli realizovani v mikrokarhitekturi Peryn a reshta 7 komand SSE4 2 z yavilis lishe v procesorah z mikroarhitekturoyu Nehalem V AMD procesorah nabir instrukcij nazivayetsya SSE4a buv realizovanij v procesorah mikroarhitekturi Barcelona Vin mistit v sobi 4 instrukciyi sho vidsutni u nabori SSE4 1 vid intel Povnij nabir instrukcij SSE4 SSE4 1 SSE4 2 lishe v procesorah FX na bazi mikroarhitekturi Bulldozer InstrukciyiSSE4 1 MPSADBW Multiple Packed Sums of Absolute Difference Rahuye sumu absolyutnih riznic vosmi znachen po chotiri sumi za raz tobto x0 y0 x1 y1 x2 y2 x3 y3 x0 y1 x1 y2 x2 y3 x3 y4 x0 y7 x1 y8 x2 y9 x3 y10 Taka operaciya vazhliva pri roboti deyakih HD kodekiv i dozvolyaye obrobiti blok zobrazhennya 8h8 za dekilka cikliv procesora PHMINPOSUW Packed Horizontal Word Minimum poshuk sered 16 bitovih bezznakovih cilih takogo sho maye minimalne znachennya PMULDQ Multiply Packed Signed Dword Integers Mnozhennya 32 bitovih znakovih cilih ta povertaye rezultat v 64bitove cile PMULLD Multiply Packed Signed Dword Integers and Store Low Result Mnozhennya 32 bitovih znakovih cilih ta povertaye v rezultat molodshu 32bitnu chastinu DPPS DPPD Dot Product of Packed Single Double Precision Floating Point Values skalyarne mnozhennya 32 ta 64 bitovih cilih BLENDPS BLENDPD BLENDVPS BLENDVPD PBLENDVB PBLENDW PMINSB PMAXSB PMINUW PMAXUW PMINUD PMAXUD PMINSD PMAXSD minimum maksimum dlya riznih tipiv ROUNDPS ROUNDSS ROUNDPD ROUNDSD okruglennya chisla z ruhomoyu komoyu v cile INSERTPS PINSRB PINSRD PINSRQ EXTRACTPS PEXTRB PEXTRD PEXTRQ PMOVSXBW PMOVZXBW PMOVSXBD PMOVZXBD PMOVSXBQ PMOVZXBQ PMOVSXWD PMOVZXWD PMOVSXWQ PMOVZXWQ PMOVSXDQ PMOVZXDQ Packed Move with Sign Zero Extend PTEST Logical Compare PCMPEQQ Compare Packed Qword Data for Equal porivnyannya 64 bitovih znachen na rivnist ta povernennya 64bitovih masok PACKUSDW Pack with Unsigned Saturation Pakuvannya 32bitnih znakovih cilih v 16bitni bezznakovi z nasichennyam bude obrizano do maksimalnogo znachennya 65536 MOVNTDQA Load Double Quadword Non Temporal Aligned Hint instrukciya dlya efektivnogo chitannya danih v SSE registr SSE4 2 Instrukciyi dlya porivnyannya ryadkiv PCMPESTRI Packed Compare Explicit Length Strings Return Index PCMPESTRM Packed Compare Explicit Length Strings Return Mask PCMPISTRI Packed Compare Implicit Length Strings Return Index Porivnyuyut dani yak PCMPISTRM Packed Compare Implicit Length Strings Return Mask PCMPGTQ Porivnyannya spakovanogo naboru 64bitovih danih na bilshe nizh POPCNT Rahuye kilkist bitiv sho dorivnyuyut odinici LZCNT rahuye kilkist providnih nuliv CRC32 prishvidshuye virahuvannya CRC32SSE4a EXTRQ INSERTQ MOVNTSD MOVNTSSPrimitkihttps www intel com content www us en support articles 000005779 processors html