|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Bannato
Iscritto dal: May 2004
Messaggi: 22
|
ALTIVEC
Il set di istruzioni SIMD si rivolge non solo alle tradizionali funzioni DSP, ma permette di ottenere incrementi nella computazioni tali da far scendere molti algoritmi ad una complessità superlineare. Pensate, dati i 4 gigaflops di potenza di cui 1 gigaflop sostenibile, alle accelerazioni ottenibili in settori come il Voice over IP (il processore G4 permette la gestione di 30 canali simultanei bidirezionali di traffico VoIP), il riconoscimento vocale, i modem multi-canale, le video-conferenze. Inoltre molti compiti divengono gestibili in tempo reale, come le comunicazioni a banda larga (ci sono incrementi nelle performance tra il 400% e il 2000% per gli algoritmi di routing e di rete specifici per architettura PowerPC), il riconoscimento del parlato continuo, la grafica 3D, la realtà virtuale, MPEG2, MPEG4, il 3D Audio. Un modo per capire cosa si può fare con una potenza di 1 gigaflop è quella di considerare un video clip di 1.000x1.000 pixels con frame-rate di 30 quadri al secondo. Otteniamo quindi 30 milioni di pixels al secondo. Con 1 gigaflop possiamo fare 33 operazioni per pixel mantenendo il frame-rate. Molti dei moderni compressori basati sulle trasformate - MPEG, JPEG2000(motion), schemi wavelet - richiedono a malapena una dozzina di operazioni algebriche per pixel. Questo vuol dire che un G4 ha abbastanza potenza da poter fare una cosa del genere in tempo reale. E' vero che anche i processori Pentium sono dotato di una forma di vettorizzazione, in alcuni casi spinta come quella del G4, ma occorre osservare che MMX/SSE ha prestazioni mediamente peggiori a parità di frequenza.
AltiVec MMX & SSE 32 registri dedicati 8 registri MMX condivisi con la FPU, 8 registri SSE dedicati 128-bit per registro 64-bit / 128bit 162 nuove istruzioni 127 nuove istruzioni Nessuna interferenza con la FPU MMX blocca la FPU Nessun Context o mode switching MMX richiede un context switching E' possibile leggere i risultati dei test sulla signal-processing library code sul sito web di Intel (www.intel.com) per accorgersi che una FFT di 1024 punti su un Pentium III 600MHz viaggia a circa 850 megaflops, mentre la stessa trasformata sul G4 500MHz viaggia a 2,5 gigaflops. Le funzioni del PowerPC G4 sono state scritte per funzionare nella fascia tra i 2 e i 3 gigaflops tra cui operazioni matriciali, convoluzioni, filtri digitali e così via. Chi è versato nella grafica e nell'elaborazione dei segnali riconoscerà queste operazioni come le più importanti e le più usate. Documenti prodotti dall'ACG (Apple's Advanced Computation Group) che mostrano i risultati sulle FFT, wavelets, algebra matriciale e algebra a multiprecisione sono disponibili sul sito web http://developer.apple.com/hardware/...research.html. sono basito! ![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: May 2001
Città: Provincia VR
Messaggi: 1281
|
__________________
Asus X5DAB SX038A Windows 7 Ultimate 64bit + Apple iBook G4 933 Leopard! |
![]() |
![]() |
![]() |
#3 | ||||||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Re: ALTIVEC
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Indubbiamente l'implementazione SIMD di Altivec è migliore di quella presente con le SSE, ma non sempre è possibile sfruttarne le caratteristiche (ad esempio, il maggior numero di registri, il fatto di poter scrivere il risultato su un registro diverso, il mascheramento applicabile per ogni operazione): dipende tutto dall'algoritmo da implementare. Bene o male con le SSE si riesce a implementare di tutto, ottenendo anche dei buoni tempi di esecuzione. Quel che conta, principalmente, è l'adozione della tecnologia SIMD da parte di un'architettura.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
||||||||
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:33.