CPU utasításkészletek

A különböző utasításarchitektúrára épülő processzorok igen régóta rendelkeznek vektormotorral, mely SIMD utasítások futtatására szolgál. Az efféle egységekkel a különböző feladatok lényegesen felgyorsíthatók, de ehhez természetesen olyan utasításkészletekre is szükség van, amelyek lehetővé teszi a programozók számára a vektormotorok befogását. Az évek során rengeteg ilyen rendszer született, és ezek jellemzően folyamatosan fejlődnek, hiszen a hardverben is sűrűn történnek változások, melyekre az újabb utasításkészletek reagálnak.

ABM: Advanced Bit Manipulation. Az utasításkészlet a POPCNT és a LZCNT elnevezésű bitmanipulációs utasításokat tartalmazza.

AVX: Advanced Vector eXtensions. Az Intel által kifejlesztett utasításkészlet, mely jelentősen fejlesztéseket tartalmaz a korábbi opciókhoz (SSE/MMX) képest, továbbá bevezeti a 256 bites regisztereket.

AVX2: Az AVX frissítése. 256 bitessé terjeszti ki a legtöbb integer SSE és AVX utasítást, bevezeti a gather támogatást, ami az adatpárhuzamos processzorok esetében egy hatékony megoldás a memória kezelésére, mivel egyszerre több memóriacímről olvas.

3DNow!: Az AMD által kifejlesztett utasításkészlet. 21 utasítást tartalmaz a multimédiás feladatok gyorsítására.

3DNow! Professional: Az Extended 3Dnow! Intel SSE utasításokkal kiegészített változata.

3DNowPrefetch: Az új processzorokból eltávolított, eredeti 3DNow! PREFETCH és PREFETCHW utasításait tartalmazza, melyekre sűrűn építenek a fejlesztők.

Extended 3DNow!: Az alap 3Dnow! 24 új utasítással kiegészített változata.

FMA3: Az AVX2 utasításkészlet része és az Intel fused multiply-add implementációja, melynek segítésével egy utasításban egyesíthető a szorzás és a műveletet követő összeadás, így a szükséges végrehajtási idő nem nagyobb a szorzáshoz viszonyítva és az eredmény is pontosabb. Az FMA3 úgynevezett virtuálisan négyoperandusos utasítás, mivel az eredmény az egyik operandus által használt regiszterbe kerül.

FMA4: Az AMD fused multiply-add implementációja, ami abban különbözik az FMA3-tól, hogy valós négyoperandusos utasítás, mivel az eredmény külön regiszterbe kerül.

MMX: Az Intel által kifejlesztett utasításkészlet. 57 utasítást tartalmaz a multimédiás feladatok gyorsítására.

SSE: Streaming Single Instruction Multiple Data (SIMD) Extensions. Az Intel által kifejlesztett utasításkészlet, mely 70 új utasítással bővíti az MMX-et, illetve 128 bites regisztereket vezet be.

SSE2: Az SSE utasításkészlet 144 új utasítással való kibővítése.

SSE3: Az SSE2 utasításkészlet 13 új utasítással való kibővítése.

SSSE3: Supplemental Streaming Single Instruction Multiple Data (SIMD) Extensions. Az SSE3 utasításkészlet 16 új utasítással való kibővítése.

SSE4: Az SSSE3 utasításkészlet 54 új utasítással való kibővítése.

SSE4.1: Az SSE4 utasításkészlet 48 új utasítással való kibővítése.

SSE4.2: Az SSE4.1 utasításkészlet 6 új utasítással való kibővítése.

SSE4A: Az SSSE3 utasításkészlet 4 új utasítással való kibővítése.

x87: Az Intel x86 utasításarchitektúra alapvető lebegőpontos kiterjesztése. Korábban NPX (Numeric Processor eXtension) néven is ismert volt, és az évtizedekkel korábban megjelent CPU-k matematikai segédprocesszoraihoz tartozott. Az integráció következtében a különálló egység a 486-os érától kezdve bekerült a fő processzormagba.

XOP: eXtended OPerations. Az AMD saját fejlesztésű utasításkészlete az SSE kiegészítésére.

Hirdetés