SSE
SSE, Streaming SIMD Extensions, uveo je x86 XMM registre i operacije s pakiranim brojevima s pomicnim zarezom jednostruke preciznosti. To je prvi clan niza neovisno prepoznatljivih SIMD prosirenja.
Što trebate znati
SSE, Streaming SIMD Extensions, uveo je x86 XMM registre i operacije s pakiranim brojevima s pomicnim zarezom jednostruke preciznosti. To je prvi clan niza neovisno prepoznatljivih SIMD prosirenja.
Kako funkcionira
XMM registar sadrzi 128 bitova. Pakirane operacije jednostruke preciznosti rade na 4 32-bitne vrijednosti s pomicnim zarezom, dok skalarni oblici operiraju na jednoj vrijednosti uz ponasanje specificno za instrukciju za preostale bitove. SSE je takoder uveo kontrolno i statusno okruzenje MXCSR za iznimke i zaokruzivanje SIMD brojeva s pomicnim zarezom.
Gdje je korisno
Graficke i audio rutine mogu primijeniti istu operaciju na vise neovisnih vrijednosti. SIMD staze (lanes) su podatkovni elementi unutar instrukcije, a ne procesorske jezgre ili niti operacijskog sustava. Okolni program i dalje upravlja ucitavanjima, spremanjima i iznimnim vrijednostima.
Kako provjeriti podršku i omogućavanje
CPUID.01H:EDX bit 25 oznacava SSE. OS mora osigurati odgovarajuce upravljanje stanjem XMM/MXCSR. U normalnom podrzanom x86-64 ABI-ju, SSE i SSE2 osnovne su mogucnosti, ali 32-bitna aplikacija ima vlastitu polaznu osnovu za postavljanje.
SIMD značajka opisuje instrukcije, a ne dodatne jezgre. Oblik instrukcije određuje širinu elementa, predznak, zaokruživanje, poravnanje i koje staze međusobno djeluju. Softver mora očuvati stanje registara prema ABI-ju i koristiti podržano okruženje izvođenja.
Što ova značajka ne utvrđuje
Sam SSE ne uspostavlja cjelobrojne operacije ili operacije dvostruke preciznosti iz SSE2, kasnija SSE prosirenja, AVX ili politiku podrske OS-a. Neke naslijedene instrukcije zahtijevaju specificno poravnanje memorije, sto programer mora postovati.
Kompatibilnost i performanse u praksi
Kasniji nazivi u obitelji SSE imaju zasebne bitove mogućnosti. Za implementiranu binarnu datoteku provjerite cjeloviti minimalni skup značajki, uključujući biblioteke i kôd za pokretanje. Zamjensko rješenje korisno je samo ako se nijedna nepodržana instrukcija ne izvede prije koraka odabira.
Praktičan kontrolni popis za provjeru
- Zabilježite točan model procesora ili platforme te verzije aplikacije, OS-a i izvršnog okruženja. Sačuvajte formulaciju stvarne pogreške ili zahtjeva.
- Provjerite proizvođačevu referencu za taj točan model, a zatim pregledajte stvarnu sposobnost i omogućeno stanje u okruženju u kojem se program izvodi.
- Usporedite svaki zahtjev odabrane binarne datoteke ili pozadinskog sustava. Slično nazvana značajka, pseudonim ili široka tehnološka oznaka nisu dovoljni.
- Potvrdite da je aplikacija odabrala predviđenu implementaciju. Koristite njezinu dokumentiranu dijagnostiku i podržanu zamjensku opciju kada zahtjevi nisu ispunjeni.
- Napravite jednu po jednu podržanu promjenu i ponovite isto radno opterećenje. Zadržite izvornu konfiguraciju i put oporavka dostupnima.
Ako je značajka navedena, ali je softver ne može koristiti
Počnite s točnom komponentom koja zakazuje. Hardverska baza podataka opisuje zabilježenu sposobnost; operacijski sustav ili hipervizor mogu izložiti drukčije stvarno okruženje. Pogreška nedopuštene instrukcije također zahtijeva istragu stvarne instrukcije koja uzrokuje pogrešku i binarne građe, jer oštećenje ili nepovezana nepodržana instrukcija mogu proizvesti sličan simptom.
Instalirajte verziju aplikacije, upravljačkog programa ili izvršnog okruženja podržanu za točnu platformu i upotrijebite proizvođačevu dokumentiranu osnovnu ili zamjensku građu ako je potrebno. Softversko ažuriranje ne može stvoriti instrukciju koja procesoru nedostaje. Promjene u firmwareu i sigurnosnim pravilima trebaju slijediti postupak proizvođača sustava i plan oporavka, a ne generički recept za optimizaciju.
Izvori i opseg ovog objašnjenja
Intel 64 and IA-32 Architectures Software Developer's Manual · x86-64 psABI: razine arhitekture i mikroarhitekture procesora
Ove reference utvrđuju arhitekturno ponašanje i softverske zahtjeve. One ne verificiraju neovisno svaku vrijednost značajke na povezanoj stranici hardverskog modela. Za podršku modela upotrijebite proizvođačeve dokaze s te stranice i provjerite stvarnu konfiguraciju sustava. Ovaj članak ne pruža mjerilo performansi, certifikaciju ili datum neovisnog pregleda.
Izvori i provjera
Uredničko vlasništvo: Feex. Nije zabilježen datum neovisnog pregleda. Kako istražujemo.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Svesci 1 i 2 opisuju imenovane obitelji instrukcija i CPUID; Svezak 3 opisuje stanje, straničenje, VMX i kontrole zaštite. Dokumentacija arhitekture ne utvrđuje podršku za određeni model.
- x86-64 psABI: razine arhitekture i mikroarhitekture procesora · Strojno sučelje, arhitektura procesora: osnovna i kumulativna tablica značajki za v2/v3/v4, provjere stanja OS-a i preporuke za implementaciju.
Je li ovaj članak bio koristan?
Dovoljno je odgovoriti s da ili ne. Odaberite razlog ako želite ili dodajte kratku bilješku.
Hvala. To nam pomaže poboljšati ovu stranicu.