Vi hører ganske mye om instruksjonssett, med x86 instruksjonssett som er et av de vanligste der ute; Det er imidlertid mye mer instruksjonssett enn bare x86. Det er faktisk mange produsentspesifikke instruksjonssett, for eksempel Intels instruksjonssett for SSE3. Vi kommer til å se på SSE3 spesielt i denne oversikten, så følg med nedenfor for å finne ut alt om det.
Hva er et instruksjonssett?
For å forstå SSE3 er det viktig å forstå hva et instruksjonssett er og hva det gjør. Et instruksjonssett, som ofte blir referert til som Instruksjonssettarkitektur (ISA), er i hovedsak maskinspråk - et dataprogrammeringsspråk som datamaskinen kan svare på direkte (f.eks. Binær eller heksadesimal instruksjon). Når det er sagt, gir et instruksjonssett i utgangspunktet instruksjoner eller kommandoer for prosessoren. Disse kommandoene forteller i utgangspunktet prosessoren å bytte til spesifikke transistorer. Instruksjonene kan være så enkle som å lese, skrive og flytte kommandoer, men det blir mye mer teknisk enn det, ettersom det er en kjernedel av datamaskinsarkitektur, hjelper deg med å håndtere datatyper, minnearkitektur, registre, unntakshåndtering, ekstern I / O og så mye mer.
Hva gjør SSE3 instruksjonssett?
Så hva gjør SSE3 spesielt? SSE3 står for Streaming SIMD Extensions 3, med “3” som indikerer at det er tredje generasjon eller iterasjon av Steaming SIMD Extensions (SSE) instruksjonssett.
På eldre prosessorer kunne bare et enkelt dataelement behandles per instruksjon. Men med introduksjonen av SSE, lar dette instruksjonssettet instruksjonene for å håndtere og administrere flere dataelementer, og til slutt gjøre behandlingen mye raskere i visse applikasjoner. Først og fremst sparker SSE virkelig inn når det gjelder mer intensive applikasjoner, spesielt der det er behov for 3D-grafikk. Et godt eksempel vil være i videospill, videoredigeringsprogrammer, 3D-modelleringsprogramvare og mange andre applikasjoner.
Den tredje generasjonen - SSE3 - bringer en stor endring: muligheten til å jobbe horisontalt i et prosessoregister. I det siste var vi bare i stand til vertikale operasjoner. Med introduksjonen av denne muligheten, kan vi prosessere gjennom Digital Signal Processing (DSP) og 3D-operasjoner i mye raskere tempo.
SSE3 bringer nok en fin forandring - en ny instruksjon for å konvertere flytende punktnumre til heltall uten å måtte rote med den globale rundingsmodusen. Ved å gjøre denne prosessen mer effektiv med SSE3, er instruksjonsrørledningen mye mindre tilstoppet, og dermed unngår man en rørledningstall, noe som er en forsinkelse i håndteringsinstruksjonene for å unngå fare.
Hva med SSE4?
SSE4 er den fjerde iterasjonen av instruksjoner for Streaming SIMD Extensions. Dette instruksjonssettet inneholder 54 instruksjoner, selv om et delmengde - kalt SSE4.1 - er tilgjengelig som inneholder 47 instruksjoner, men du finner bare denne undergruppen i Penryn. Et lignende underett - SSE4.2 - med de resterende 7 instruksjonene, finnes i den Nehalem-baserte Core i7-prosessoren.
Som vi allerede vet, er SSE3 (og tidligere versjoner) spesielle instruksjoner for “multimedia” baserte applikasjoner. Du kan se på SSE4 som en ny og forbedret versjon av det, i hovedsak enda optimalisert programmering som gjør at oppgaver kan utføres mye raskere.
Lukking
Ved å følge denne artikkelen, håpet vi at vi hjalp deg med å forstå noen av de mer tekniske aspektene ved instruksjonssettene SSE3 og SSE4. Har du spørsmål? Husk å bli med i kommentarfeltet nedenfor eller over i PCMech-forumet!