Vi hör ganska mycket om instruktionsuppsättningar, där instruktionsuppsättningen x86 är en av de vanligaste där ute; Det finns dock mycket fler instruktionsuppsättningar än bara x86. Det finns faktiskt många tillverkarspecifika instruktionsuppsättningar, till exempel Intels instruktionsuppsättning SSE3. Vi kommer att titta på SSE3 specifikt i denna översikt, så följ med nedan för att ta reda på allt om det.
Vad är en instruktionsuppsättning?
För att förstå SSE3 är det viktigt att förstå vad en instruktionsuppsättning är och vad den gör. En instruktionsuppsättning, som ofta kallas ISA (Instructions Set Architecture), är i huvudsak maskinspråk - ett datorprogrammeringsspråk som datorn kan svara direkt (t.ex. binär eller hexadecimal instruktion). Som sagt, en instruktionsuppsättning ger i princip instruktioner eller kommandon för processorn. Dessa kommandon berättar i princip processorn att byta till specifika transistorer. Instruktionerna kan vara så enkla som att läsa, skriva och flytta kommandon, men det blir mycket mer tekniskt än så, eftersom det är en kärndel i datorarkitekturen, som hjälper till att hantera datatyper, minnesarkitektur, register, undantagshantering, extern I / O och så mycket mer.
Vad gör SSE3 instruktionsuppsättningen?
Så specifikt, vad gör SSE3? SSE3 står för Streaming SIMD Extensions 3, med “3” som indikerar att det är den tredje generationen eller iterationen av Steaming SIMD Extensions (SSE) instruktionsuppsättning.
På äldre processorer kunde bara ett enda dataelement behandlas per instruktion. Men med introduktionen av SSE tillåter denna instruktionsuppsättning instruktionerna att hantera och hantera flera dataelement, vilket i slutändan gör bearbetningen mycket snabbare i vissa applikationer. SSE startar i första hand verkligen när det gäller mer intensiva applikationer, särskilt där 3D-grafik behövs. Ett bra exempel skulle vara i videospel, videoredigeringsprogram, 3D-modelleringsprogramvara och många andra applikationer.
Den tredje generationen - SSE3 - medför en stor förändring: förmågan att arbeta horisontellt i ett processorregister. Tidigare kunde vi bara vertikala operationer. Med introduktionen av denna kapacitet kan vi bearbeta via DSP (Digital Signal Processing) och 3D-operationer i mycket snabbare takt.
SSE3 ger ytterligare en snygg förändring - en ny instruktion för att konvertera flytande punktnummer till heltal utan att behöva röra sig med det globala rundningsläget. Genom att göra denna process effektivare med SSE3 är instruktionsrörledningen mycket mindre tilltäppta och därmed undviks en rörledningsstativ, vilket är en försening i hanteringsinstruktionerna för att undvika en fara.
Vad sägs om SSE4?
SSE4 är den fjärde iterationen av instruktioner för Streaming SIMD Extensions. Den här instruktionsuppsättningen innehåller 54 instruktioner, även om en delmängd - kallad SSE4.1 - är tillgänglig som innehåller 47 instruktioner, men du hittar endast denna delmängd i Penryn. En liknande delmängd - SSE4.2 - med de återstående 7 instruktionerna finns i den Nehalem-baserade Core i7-processorn.
Som vi redan vet är SSE3 (och tidigare versioner) specialinstruktioner för ”multimedia” baserade applikationer. Du kan se på SSE4 som en ny och förbättrad version av det, i huvudsak ännu mer optimerad programmering som gör att uppgifter kan utföras mycket snabbare.
Stängning
Genom att följa den här artikeln hoppades vi att vi hjälpte dig att förstå några av de mer tekniska aspekterna av instruktionsuppsättningarna SSE3 och SSE4. Har du frågor? Var noga med att gå med oss i kommentaravsnittet nedan eller över i PCMech-forumet!