Streaming SIMD-utvidelser
Den Streaming SIMD Extensions ( SSE ), tidligere også Internet SIMD Streaming Extensions (isse), er en instruksjonssett forlengelse av den x86-arkitektur utviklet av Intel , som ble introdusert med innføringen av Pentium III (Katmai) prosessor i 1999, og derfor opprinnelig kalt det Katmai New Instructions (KNI) hadde på seg. Hensikten er å akselerere programmer gjennom parallellisering til instruksjonsnivå, kalt SIMD .
konsept
I motsetning til den tidligere publiserte MMX -instruksjonssettet forlengelse, ble SSE spesielt utviklet for flyt antall datatyper . I tillegg, 128-bits registre som var dobbelt så bred implementert, som begge er hyppig kritisert svakhetene ved MMX-instruksjonssettet. Intel bestemte seg også for å redesigne SSE instruksjonssett helt og gjøre det inkompatibelt med 3DNow- instruksjonene som ble utgitt av konkurrent AMD i 1998 , og som tjente et sammenlignbart formål. Dette trinnet var vellykket på lang sikt, SSE vant over 3DNow og AMD støttet senere bare SSE og la 3DNow-støtten utløpe.
Selv om den først ble eksplisitt nevnt i navnet (ISSE), har denne teknologien ingenting direkte å gjøre med Internett; snarere tjente referansen bedre markedsføring (Intel annonserte med introduksjonen av Pentium III, blant annet om at internett-surfing ville bli raskere og generelt mer spennende). Etter kort tid droppet Intel "jeg" slik at vi i dag bare snakker om SSE .
SSE videre utvikling
Konkurransen som har eksistert i noen tid mellom AMD og Intel om definisjonen av suverenitet i den videre utviklingen av x86-arkitekturen har ført til inkompatible utvidelser av SSE siden rundt SSE3.
SSE2 , SSE3 , SSSE3 , SSE4 , SSE4a og SSE5 er nyere utvidelser eller utvidelsesforslag fra SSE både fra AMD og Intel. I mellomtiden eksisterer videre utviklingsgrener med Advanced Vector Extensions , XOP og CVT16 .
teknisk struktur
SSE-instruksjonsutvidelsen besto opprinnelig av 70 instruksjoner og 8 nye registre (XMM0 til XMM7), senere ble både antall register og antall instruksjoner økt i løpet av den videre utviklingen.
I likhet med AMDs 3DNow- utvidelser er SSE primært designet for flytende punktoperasjoner . Imidlertid, med Pentium III, introduserte Intel nye 128-bits brede registre slik at dobbelt så mye data kan behandles parallelt med SSE-kommandoer som med 3DNow, som er basert på 64-biters registre. Med den gangen prosessorer, gikk dette imidlertid ikke hånd i hånd med høyere beregningsgjennomstrømning, siden 128-biters SSE-kommandoene ble delt opp internt i to 64-biters SSE-mikrooperasjoner hver, fordi de interne kjøringsenhetene og deres datastier bare er 64 bits brede var.
I dagens 64-biters prosessorer, for eksempel de som er basert på kjernemikroarkitekturen , blir de 128 bit brede SSE-registerene faktisk behandlet i ett trinn. Antall SSE-registre har også blitt økt til 16, med de nylig introduserte registerene blir referert til som XMM8 til XMM15, analogt med forrige navneskema.
Støtte i CPUene
Siden SSE var en av de første SIMD- utvidelsene til x86-arkitekturen og ble lansert på markedet i 1999, har praktisk talt alle x86-prosessorer hatt SSE siden midten av 2000-tallet.
For eksempel, fra og med Athlon , støttet AMD noen av kommandoene i SSE-kommandosettet (inkludert de som fungerer med 64-bitersregistre). Dette er også referert til som en utvidelse av MMX. SSE har blitt støttet fullt ut siden Athlon XP- prosessoren, så omfattende at selv sin egen 3DNow-utvidelse har blitt forlatt.
Nedenfor er en oversikt over CPU-familien som de respektive produsentene har integrert SSE fra:
- AMD : helt fra Athlon XP, med Athlon og Duron (fra Morgan- prosessorkjernen ) bare delvis
- Centaur Technology : for C3 med prosessorkjerne Nehemiah
- Intel : fra Pentium III , for Celeron med prosessorkjerne Coppermine
- Transmeta : fra Efficeon
Individuelle bevis
- ↑ 3DNå! Instruksjoner blir avviklet ( Memento av den opprinnelige datert 09.11.2013 i Internet Archive ) Omtale: The arkivet koblingen ble satt inn automatisk og har ennå ikke blitt sjekket. Vennligst sjekk originalen og arkivlenken i henhold til instruksjonene, og fjern deretter denne meldingen. (Engelsk)
- Ner Agner Fog: Stopp instruksjonssett krigen ( engelsk ) agner.org. 5. desember 2009. Hentet 12. mai 2012.
- St Jon Stokes: Into the Core: Intels neste generasjons mikroarkitektur ( engelsk ) arstechnica.com. 5. april 2006. Arkivert fra originalen 1. april 2007. Hentet 12. mai 2012.