SSE

Wikipedia
Loikkaa: valikkoon, hakuun
Tämä artikkeli käsittelee käskykantalaajennosta. Levy-yhtiöstä katso: Skill Street Entertainment.

SSE eli Streaming SIMD Extensions (aluksi ISSE, Internet Streaming SIMD Extension) on Intelin SIMD-käskykantalaajennos (Single Instruction, Multiple Data; yksi käsky, paljon dataa) IA-32-käskykantaan. SSE tuli käyttöön vuonna 1999 Pentium III -suorittimessa.

SSE lisää suorittimeen kahdeksan 128-bittistä rekisteriä (XMM0–XMM07) ja 70 kpl näitä käyttäviä käskyjä. Käskykannasta löytyy mm. käskyjä joilla rekistereille voidaan laskea rinnakkain neljää 32-bittistä liukulukuoperaatiota.

SSE tehostaa erityisesti 3D-grafiikan geometriamuunnosten laskemista. Surkuhupaisasti sitä mainostettiin alun perin Internetin käyttöä nopeuttavana laajennuksena, mistä alkuperäinen nimikin tuli.

Koska käskykanta lisäsi suorittimen rekisterien määrää, tulee tämä huomioida tilanteissa, joissa suorittimen tila piti tallettaa, kuten esimerkiksi ohjelmasta toiseen vaihtaessa, joten SSE-käskyjen käyttö vaatii tukea alla olevalta käyttöjärjestelmältä. Jotta ohjelmat eivät voisi yrittää käyttää SSE-käskyjä ilman sitä tukevaa käyttöjärjestelmää, mistä seuraisi ohjelmien virheellistä toimintaa, suorittimeen lisättiin uusi toimintatila. SSE-tietoinen käyttöjärjestelmä asettaa suorittimen tähän toimintatilaan, ja vasta tämän jälkeen SSE-käskyt ovat käytettävissä.

Ensimmäinen SSE-käskykantaa tukenut suoritin oli Intelin Pentium III, joka julkaistiin alkuvuodesta 1999. AMD oli vajaata vuotta aikaisemmin julkaissut oman 3DNow!-käskykantansa K6-2-suorittimen myötä. 3DNow! puolestaan oli "oikein tehty" korvaaja Intelin alkuperäiselle MMX-käskylaajennukselle, joka ei osannut käsitellä kuin kokonaislukuja, ja sitä käytettäessä esti suorittimen liukulukumatematiikan käytön. SSE ja 3DNow! olivat keskenään kilpailevia käskykantalaajennoksia, ja ajan myötä SSE vei voiton mm. Intelin suuremman markkina-aseman ja paremman kääntäjätuen ansiosta, ja nykyisin ohjelmat optimoidaan tyypillisesti käyttämään SSE-käskyjä mutta ei 3DNow!-käskyjä. AMD otti SSE-käskykannan käyttöön Athlon XP-suorittimessaan vuonna 2001. SSE-käskykantaa on myöhemmin laajennettu SSE2-käskyillä.

SSE:n seuraajat[muokkaa | muokkaa wikitekstiä]

  • SSE2 tuli käyttöön Pentium 4:ssa. Se lisäsi 144 uutta käskyä, tuen kaksoistarkkuuden (64-bitin) liukuluvuille, sekä kokonaislukuoperaatiot, jotka käyttävät SSE-rekistereitä. Näin se korvasi täysin epäonnistuneen MMX:n, sekä koko Intel 8087:n liukukäskykannan.
  • SSE3 eli Prescott New Instructions on SSE2:n edelleen kehitetty versio, joka lisäsi muutamia signaalinkäsittelyyn (jatkuvaan datavirtaan) suuntautuneita käskyjä ja säikeidenhallintaa.
  • SSSE3 on pieni Core Microarchitecturen (2006) laajennus SSE3:een, joka lisäsi 16 käskyä sanan tavujen permutointiin, 16-bittisten kiinteän pilkun lukujen kertomiseen oikein toimivalla pyöristyksellä.
  • SSE4 on suuri muutos, joka esiteltiin syyskuussa 2006 ja otettiin käyttöön vuonna 2008 julkaistussa "Nehalem"-suorittimessa.
Tämä tietotekniikkaan liittyvä artikkeli on tynkä. Voit auttaa Wikipediaa laajentamalla artikkelia.