AltiVec

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

AltiVec este un set de instrucțiuni SIMD în virgulă mobilă dezvoltat de Apple , IBM și Motorola (alianța AIM) și implementat pe unele versiuni de procesoare PowerPC . AltiVec este o marcă comercială înregistrată a Motorola: Apple definește unitatea dedicată gestionării acestor instrucțiuni Velocity Engine în timp ce IBM utilizează abrevierea VMX pentru a identifica acest grup de instrucțiuni. AltiVec face parte din specificația Power v2.03 .

Când a fost introdus AltiVec, acesta era cel mai bun sistem SIMD disponibil pentru computerele personale. Echivalentele produselor Intel nu au fost comparabile. [ citație necesară ] MMX nu a funcționat în virgulă mobilă, ci s-a ocupat doar de numere întregi, în timp ce SSE, în timp ce se ocupa cu numerele în virgulă mobilă, a fost mult mai lent și limitat decât AltiVec. În cele din urmă, a patra versiune a sistemului SIMD Intel SSE2 a rezolvat majoritatea problemelor și a adoptat multe dintre soluțiile utilizate de AltiVec.

Caracteristici

AltiVec și SSE2 utilizează registre pe 128 de biți . Aceste registre sunt capabile să reprezinte 16 date semnate sau nesemnate pe 8 biți , opt date semnate sau nesemnate pe 16 biți și patru date semnate sau nesemnate pe 32 de biți care pot fi, de asemenea, în virgulă mobilă. De asemenea, au un manager de cache de instrucțiuni care organizează instrucțiuni pentru a minimiza conflictele de acces la memorie.

Spre deosebire de SSE2, AltiVec acceptă direct gestionarea pixelilor cu modul RGB nativ, care nu se bazează pe gestionarea procesorului pe 64 de biți . Prin adaptarea la filosofia PowerPC RISC , instrucțiunile AltiVec sunt capabile să manipuleze doar datele stocate în registre, dar spre deosebire de SSE2 nu există registre speciale și toate operațiunile pot utiliza toate registrele. Unitatea de calcul AltiVec este echipată cu 32 de registre pe 128 de biți, spre deosebire de cei 8 registre pe 128 de biți ai unității SSE2 și, prin urmare, este capabilă să proceseze mai multe informații înainte de a avea nevoie să acceseze memoria principală. În plus, multe operații AltiVec sunt capabile să utilizeze simultan trei registre, spre deosebire de SSE2, care poate utiliza maximum două registre în același timp.

Aplicații

Cele mai recente versiuni ale compilatorului GNU și ale compilatorului Visual Age IBM sunt capabile să compileze cod care profită de instrucțiunile AltiVec. Compilatorul se ocupă de furnizarea de primitive de nivel înalt programatorului, astfel încât acesta să poată scrie un program C care profită de unitatea de calcul. Programatorul trebuie doar să definească tipul de date care trebuie procesate și operațiunile care trebuie efectuate și apoi compilatorul creează codul cel mai potrivit, folosind instrucțiunile corecte și stocând datele în cel mai bun mod pentru procesor.

Apple este utilizatorul principal al potențialului AltiVec. Unitatea de calcul AltiVec este utilizată pentru a îmbunătăți performanța programelor precum QuickTime , iTunes etc. Instrucțiunile sunt folosite de Quartz , motorul grafic macOS pentru a îmbunătăți și a accelera prezentarea grafică. Programele grafice precum Adobe Photoshop folosesc, de asemenea, AltiVec pentru a îmbunătăți timpul de răspuns. Motorola a introdus AltiVec în toate procesoarele sale PowerPC începând cu PowerPC G4 . În multe sisteme încorporate, aceste instrucțiuni sunt utilizate pentru a realiza procesarea audio sau video în timp real.

IBM a inclus unități VMX în ultimele sale procesoare POWER , deși aceste procesoare fiind dedicate mainframelor sau centrelor de date, utilitatea reală a acestor unități a fost întotdeauna discutabilă. În cel mai recent procesor de computer, PowerPC 970 (folosit de Power Mac G5 ) IBM a introdus două unități VMX de înaltă performanță. Prima este o unitate total independentă, în timp ce a doua unitate este capabilă să efectueze doar operații de multiplicare și adunare pe date, în timp ce în rest se bazează pe prima unitate.

linkuri externe

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT