ATI CrossfireX preview: 4 GPU in parallelo

Con alcune settimane di anticipo rispetto al debutto dei driver compatibili con tecnologia CrossfireX, analizziamo quelli che sono i margini di scalabilità ottenibili abbinando in un sistema Spider due schede video ATI Radeon HD 3870 X2 funzionanti in parallelo. Valid incrementi medi, ma è necessario un sistema all'altezza e titoli che beneficino di 4 GPU
di Paolo Corsini pubblicato il 26 Febbraio 2008 nel canale Schede VideoATIRadeonAMD
La tecnologia CrossfireX
Al debutto delle piattaforme Spider, nome con il quale AMD indica la propria combinazione tra processore Phenom, scheda madre con chipset AMD serie 7 e scheda video della famiglia Radeon HD 3800, una particolare tecnologia ha raccolto notevole interesse da parte degli appassionati. Parliamo di CrossfireX, nome che indica l'approccio multi-GPU di AMD con la quale poter collegare in parallelo 2, 3 oppure 4 GPU.
Al debutto delle piattaforme Spider questa tecnologia non è stata resa accessibile da AMD, a motivo dello sviluppo driver non ultimato per tempo. Inizialmente è stato indicato il mese di Gennaio quale periodo per il rilascio di un set di driver per configurazioni CrossfireX con 3 oppure 4 GPU in parallelo, ma vari problemi legati allo sviluppo hanno posticipato la data al mese di Marzo.
Come opera CrossfireX? Alla base troviamo la tecnica AFR, Alternate Frame Rendering, una di quelle adottate sia da NVIDIA che da ATI con le proprie tecnologie multi GPU in quanto tra le più semplici da implementare. Questa consiste nel far elaborare un frame ad una GPU e il successivo ad un'altra, pertanto è estensibile ad un numero superiore a 2 di GPU presenti nel sistema in modo relativamente semplice. E' ovviamente sempre necessario che i driver supportino correttamente questa tecnologia, abilitando uno specifico profilo per ogni gioco così da garantire sia che non si presentino artefatti nel rendering, che la più elevata scalabilità delle prestazioni possibile.
2 schede video ATI Radeon HD 3870 X2 in configurazione CrossfireX
Come sempre accade con architetture multi GPU, l'incremento dei frames al secondo non sarà mai pari al 100% nel momento in cui si introduce una seconda scheda video, e quindi non è ipotizzabile se non in via teorica un incremento del 300% dei frames passando da 1 a 4 schede video. Per cercare di ottenere la massima scalabilità delle prestazioni è indispensabile che si verifichino alcune condizioni di uso ben precise:
- i driver devono essere ottimizzati correttamente, e prevedere un profilo specifico per il titolo utilizzato che abiliti la tecnologia CrossfireX;
- il gioco deve per sua natura generare un notevole carico di lavoro sulla GPU: i titoli più recenti sono quindi, almeno in via generale, i migliori candidati per questo genere di scenari di utilizzo;
- la risoluzione video utilizzata deve essere la più elevata possibile, così da generare maggior carico di lavoro sulla scheda video, con possibilmente filtro anisotropico e anti aliasing spinti ai massimi livelli così da incrementare ulteriormente il lavoro svolto dalla GPU.
Queste note lasciano chiaramente intendere come questa tecnologia multi GPU, ma lo stesso vale per quella SLI di NVIDIA, dipenda fortemente dallo sviluppo dei driver; nella peggiore delle ipotesi aggiungere una GPU in più non porterà ad un incremento delle prestazioni velocistiche.
L'utilizzo di tecnologie multi GPU ha sempre un riflesso negativo sulla dotazione di memoria video; si possono infatti verificare scenari di utilizzo per i quali la memoria video diventa collo di bottiglia ad una specifica risoluzione video di test in una configurazione con 2 o più schede video in Crossfire, senza esserlo invece con una sola scheda video montata nel sistema. Questo è legato principalmente all'utilizzo di parte della memoria video per i dati necessari alle varie schede per comunicare tra di loro e gestire il flusso dei frames al secondo in modo efficiente. La conseguenza diretta di questo è quindi quella di utilizzare, in configurazioni CrossfireX, schede video che abbiano una dotazione di memoria video onboard adeguata, prediligendo schede con almeno 512 Mbytes di memoria rispetto a quelle con 256 Mbytes di memoria.
AMD mette a disposizione, con i propri driver CrossfireX, una notevole flessibilità di configurazione del sistema in termini di differenti schede video montate: è possibile collegare tra di loro schede video della serie Radeon HD 3800 con differenti frequenze di clock di GPU e memoria, senza che queste vengano cambiate. Una configurazione di questo tipo avrà ovviamente come collo di bottiglia la scheda più lenta tra quelle utilizzate; se si abbinano due schede Radeon HD 3870 con una Radeon HD 3850 le prestazioni saranno quindi legate alla potenzialità della scheda Radeon HD 3850.
Passando a schede con differenti dotazioni di memoria video, i driver opereranno prendendo quale riferimento la scheda con la dotazione di memoria più ridotta: utilizzando una scheda con 256 Mbytes di memoria video, pertanto, i driver si comporteranno pensando che tutte le schede inserite nel sistema siano dotate di quel quantitativo, a prescindere da quello che sia il valore effettivo. I driver permettono di abbinare quindi qualsiasi scheda basata su GPU RV670, modello Radeon HD 3850 e Radeon HD 3870, oltre a qualsiasi scheda dotata di GPU R680, quindi i modelli Radeon HD 3870 X2.
Abbiamo avuto la possibilità di analizzare in anteprima il comportamento di una configurazione CrossfireX basata su due schede video ATI Radeon HD 3870 X2, utilizzando una versione beta preliminare dei driver Catalyst; da pannello questi driver sono indicati come Catalyst 8.1, benché all'atto pratico non possano essere confrontati sia con i Catalyst 8.1 che con i più recenti Catalyst 8.2 rilasciati ufficialmente da AMD e non dotati ancora del supporto CrossfireX. Non siamo in possesso di questi driver beta, e anche qualora lo fossimo non potremmo distribuirli.