Siirry sisältöön

SSE2

ArkkitehtuuriviiteFeex

SSE2 laajentaa 128-bittistä XMM-ohjelmointimallia kaksoistarkkuuden liukuluku- ja kokonaislukuoperaatioilla. Se on osa tavanomaista x86-64-perustasoa, mutta ei toimi yleisnimityksenä jokaiselle myöhemmälle SSE-laajennukselle.

Mitä sinun tulee tietää

SSE2 laajentaa 128-bittistä XMM-ohjelmointimallia kaksoistarkkuuden liukuluku- ja kokonaislukuoperaatioilla. Se on osa tavanomaista x86-64-perustasoa, mutta ei toimi yleisnimityksenä jokaiselle myöhemmälle SSE-laajennukselle.

Miten se toimii

128-bittinen XMM-rekisteri voi sisältää 2 kaksoistarkkuuden arvoa tai usean levyisiä kokonaislukuelementtejä. SSE2 siirtää suuren osan SIMD-kokonaislukutyöstä XMM-rekistereihin MMX/x87-aliasointimallin sijaan. Skalaari- ja pakatut muodot, etumerkillisyys, saturaatio ja kohdistusvaatimukset pysyvät käskykohtaisina.

Missä siitä on hyötyä

Numeerinen kirjasto voi laskea kaksoistarkkuuden arvopareilla, kun taas tavuja käsittelevä ydin voi vertailla tai järjestää uudelleen pakattua kokonaislukudataa. Rekisterin elementtien määrä ei kerro käskyn läpimenosta tai sovelluksen nopeutumisesta.

Tuen ja käyttöönoton tarkistaminen

CPUID.01H:EDX bitti 26 luetteloi SSE2-tuen. Varmista, että suoritusympäristö säilyttää XMM-tilan ja että sovelluksen binaarinen perustaso vastaa sitä. Käytä sovelluksen dokumentoitua vanhaa koontiversiota, kun sen nykyinen koontiversio vaatii uudemman laajennuksen.

SIMD-ominaisuus kuvaa käskyjä, ei lisäytimiä. Käskymuoto määrittää elementin leveyden, etumerkillisyyden, pyöristyksen, kohdistuksen ja sen, mitkä kaistat ovat vuorovaikutuksessa. Ohjelmiston on säilytettävä ABI-rajapinnan rekisteritila ja käytettävä tuettua suoritusympäristöä.

Mitä ominaisuus ei takaa

SSE2 ei tarkoita tukea laajennuksille SSE3, SSSE3, SSE4.1 tai SSE4.2. Uudemmalle perustasolle koottu ohjelmisto voi epäonnistua muutoin täysin toimivassa SSE2-yhteensopivassa järjestelmässä. SSE2-lippu ei ole täydellinen käyttöjärjestelmän tai sovelluksen yhteensopivuustuomio.

Yhteensopivuus ja suorituskyky käytännössä

Myöhemmillä SSE-perheen nimillä on omat ominaisuutensa bitit. Tarkista tuotantobinaarille täydellinen vähimmäisominaisuusjoukko, mukaan lukien kirjastot ja käynnistyskoodi. Korvaava toteutus on hyödyllinen vain, jos mitään tukematonta käskyä ei suoriteta ennen valintavaihetta.

Käytännön tarkistuslista todentamiseen

  1. Kirjaa tarkka suoritin- tai alustamalli sekä kyseessä olevat sovellus-, käyttöjärjestelmä- ja ajonaikaiset versiot. Säilytä todellisen virheen tai vaatimuksen sanamuoto.
  2. Tarkista kyseisen tarkan mallin valmistajaviite ja tutki sitten todellinen suorituskyky ja käyttöönottotila ympäristössä, jossa ohjelma suoritetaan.
  3. Vertaa valitun binaarin tai taustajärjestelmän jokaista vaatimusta. Samankaltaisesti nimetty ominaisuus, alias tai laaja teknologiamerkintä ei riitä.
  4. Varmista, että sovellus valitsi aiotun toteutuksen. Käytä sen dokumentoitua diagnostiikkaa ja tuettua vararatkaisua, kun vaatimukset eivät täyty.
  5. Tee yksi tuettu muutos kerrallaan ja toista sama työkuorma. Pidä alkuperäinen kokoonpano ja palautuspolku saatavilla.

Jos ominaisuus on luettelossa, mutta ohjelmisto ei voi käyttää sitä

Aloita tarkasta vikaantuvasta komponentista. Laitteistotietokanta kuvaa tallennettua kykyä; käyttöjärjestelmä tai hypervisori voi tuoda esiin erilaisen todellisen ympäristön. Virheellisen käskyn virhe vaatii myös todellisen virheellisen käskyn ja binaarikäännöksen tutkimista, koska korruptio tai liittymätön tukematon käsky voi aiheuttaa samanlaisen oireen.

Asenna kyseiselle alustalle tuettu sovellus-, ajuri- tai ajoympäristöversio ja käytä tarvittaessa toimittajan dokumentoitua perus- tai varakäännöstä. Ohjelmistopäivitys ei voi luoda käskyä, joka suorittimelta puuttuu. Laiteohjelmisto- ja tietoturvakäytäntömuutosten tulee noudattaa järjestelmävalmistajan menettelyä ja palautussuunnitelmaa yleisen optimointiohjeen sijaan.

Tämän selityksen lähteet ja laajuus

Intel 64 and IA-32 Architectures Software Developer's Manual · x86-64 psABI: prosessoriarkkitehtuurin ja mikroarkkitehtuurin tasot

Nämä viitteet määrittävät arkkitehtuurisen käyttäytymisen ja ohjelmistovaatimukset. Ne eivät itsenäisesti vahvista kaikkia ominaisuusarvoja linkitetyllä laitteistomallisivulla. Mallikohtaista tukea varten käytä kyseisen sivun valmistajan todisteita ja tarkista todellinen järjestelmäkokoonpano. Tämä artikkeli ei tarjoa suorituskykytestiä, sertifiointia tai riippumatonta arviointipäivämäärää.

Lähteet ja vahvistus

Toimituksellinen omistajuus: Feex. Riippumatonta tarkistuspäivämäärää ei ole kirjattu. Miten tutkimme.

Oliko tämä artikkeli hyödyllinen?

Kyllä tai ei riittää. Valitse halutessasi syy tai lisää lyhyt viesti.

Oliko tämä artikkeli hyödyllinen?