Streaming SIMD Extensions: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
Aggiunte alcune nuove informazioni |
||
Riga 1:
'''SSE''' ('''''S'''treaming '''S'''IMD '''E'''xtensions'') è un [[instruction set]] [[SIMD]] progettato dalla [[Intel]] nel [[1999]] ed utilizzato nel suo processore [[Pentium III]] come risposta al [[3DNow!]] prodotto da [[Advanced Micro Devices|AMD]], che era presente sul mercato da circa un anno. Era originariamente conosciuto con la sigla '''KNI''', da '''K'''atmai '''N'''ew '''I'''nstructions (
Il primo tentativo di SIMD da parte della Intel, la tecnologia [[MMX]], fu una delusione. MMX ha principalmente due problemi: riutilizza i registri a [[virgola mobile]] rendendo impossibile per la [[CPU]] lavorare contemporaneamente sui dati in virgola mobile e i dati [[SIMD]] contemporaneamente, ma può operare solo sugli interi.
Riga 7:
Poiché questi registri a 128 bit rappresentano stati aggiuntivi che il [[sistema operativo]] deve preservare durante il cambio di contesto dei [[task]], essi sono disabilitati finché il sistema operativo non li abilita esplicitamente. Questo significa che il [[sistema operativo|SO]] deve essere programmato per utilizzare le istruzioni FXSAVE e FXRSTOR, che sono la coppia di istruzioni introdotte da SSE per salvare in un'unica operazione i registri [[x86]], MMX, 3DNow! e SSE. Il supporto per queste istruzioni fu aggiunto velocemente a tutti i principali sistemi operativi a 32 bit.
Poiché SSE aggiunge il supporto per la virgola mobile, fu molto più utilizzato di MMX dato che tutte le schede video gestiscono internamente i calcoli sui numeri interi. L'intero set era costituito da 70 istruzioni. Con l'introduzione di [[SSE2]] anche gli interi possono essere utilizzati con i nuovi registri XMM, perciò l'[[instruction set]] MMX adesso è ridondante.
Sul [[Pentium III]], comunque, SSE è implementato utilizzando gli stessi circuiti della [[Floating Point Unit|FPU]], il che significa che la [[CPU]] non può inviare nella [[Pipeline dati|pipeline]] contemporaneamente le istruzioni SSE e quelle riguardanti la virgola mobile. I registri separati permettono di mescolare le operazioni SIMD e a virgola mobile, ma senza le prestazioni raggiunte passando esplicitamente dalla modalità a virgola mobile a quella MMX.
|