211service.com
Immagini del supercomputer senza chip grafici
Prima che esistessero chip di elaborazione grafica specializzati, i pionieri nel campo della visualizzazione utilizzavano supercomputer multicore per realizzare dati in tre dimensioni. Oggi, tuttavia, la velocità con cui i supercomputer possono elaborare i dati sta rapidamente superando la velocità con cui possono immettere ed emettere tali dati. I cluster di elaborazione grafica stanno diventando obsoleti.

Collasso del nucleo : Questa immagine - passaggio 1492 di una simulazione di una supernova con collasso del nucleo - è stata generata sul super computer dell'Argonne National Laboratory, Intrepid, senza l'uso di un cluster grafico.
I ricercatori dell'Argonne National Laboratory e altrove stanno lavorando a una soluzione. Invece di spostare enormi set di dati in un cluster di elaborazione grafica specializzato per il rendering, come si fa ora, stanno scrivendo un software che consente alle migliaia di processori in un supercomputer di eseguire la visualizzazione da soli.
Tom Peterka e Rob Ross, informatici dell'Argonne National Laboratory, e Hongfeng Yu e Kwan-Liu Ma dell'Università della California a Davis, hanno scritto software per Intrepid, un supercomputer IBM Blue Gene/P, che aggira il cluster di elaborazione grafica interamente. Ci consente di [visualizzare gli esperimenti] in un luogo più vicino a dove risiedono i dati, sulla stessa macchina, afferma Peterka. La soluzione del suo team evita la necessità di spostare i dati da dove sono stati generati a un cluster di computer secondario, che richiede molto tempo.
I dati del test di Peterka, ottenuti da Giovanni Blondino della North Carolina State University e Anthony Mezzacappa dell'Oak Ridge National Laboratory, rappresentano 30 passaggi sequenziali nella morte esplosiva simulata di una stella e sono tipici del tipo di informazioni che un supercomputer come quello di Argonne potrebbe affrontare. Il test più grande di Peterka con i dati massimizzati a una risoluzione tridimensionale di 89 miliardi di voxel (pixel tridimensionali) e ha prodotto immagini bidimensionali di 4.096 pixel su un lato. L'elaborazione dei dati ha richiesto 32.768 dei 163.840 core di Intrepid. Le immagini bidimensionali sono state generate con un algoritmo di rendering del volume parallelo, un approccio classico alla creazione di un'istantanea bidimensionale di un set di dati tridimensionale.
Normalmente, la visualizzazione e la post-elaborazione dei dati generati da Intrepid, che, con 557 teraflop, è il settimo supercomputer più veloce del mondo, richiede un'unità di elaborazione grafica separata nota come Eureka. (Un teraflop è l'equivalente di un trilione di calcoli al secondo.) Costruito da GPU NVIDIA Quadro Plex S4 (unità di elaborazione grafica), Eureka funziona a 111 teraflop. I supercomputer più potenti, nella gamma dei petaflop, presentano sfide ancora più grandi.
Più grandi andiamo, più il problema è limitato da [velocità di input/output], afferma Peterka. La semplice scrittura su disco della quantità di dati prodotti da una simulazione eseguita su un supercomputer petaflop potrebbe richiedere una quantità di tempo irragionevole. Il motivo è semplice: da una generazione di supercomputer all'altra, la capacità di archiviazione e la larghezza di banda di archiviazione non aumentano rapidamente quanto la velocità di elaborazione.
Questa disparità significa che i futuri centri di supercalcolo potrebbero semplicemente non essere in grado di permettersi unità di elaborazione grafica separate. A petascale, [unità di elaborazione grafica separate] sono meno convenienti, afferma Hank Childs , un ingegnere di sistemi informatici ed esperto di visualizzazione presso il Lawrence Berkeley National Laboratory. Childs sottolinea che un cluster di visualizzazione dedicato, come quello per il supercomputer Intrepid di Argonne, spesso costa circa $ 1 milione, ma in futuro tale costo potrebbe aumentare di un fattore 20.
Pat McCormick, che lavora alla visualizzazione sul supercomputer più veloce del mondo, l'AMD Opteron e l'IBM Cell-powered Roadrunner presso il Los Alamos National Laboratory, afferma che il lavoro di Peterka sulla visualizzazione diretta dei dati è fondamentale perché queste macchine stanno diventando così grandi che davvero non ho scelta. I metodi di visualizzazione esistenti basati su GPU continueranno ad essere appropriati solo per alcuni tipi di simulazioni, afferma McCormick.
Se hai intenzione di consumare un intero supercomputer con i calcoli, non penso che tu abbia scelta, dice McCormick. Se stai correndo su quella scala, dovrai fare il lavoro sul posto, perché ci vorrebbe un'eternità per spostarlo e dove altro sarai in grado di elaborare così tanti dati?
Peterka, McCormick e Childs immaginano un futuro in cui i supercomputer eseguono la cosiddetta elaborazione in situ, in cui le simulazioni vengono visualizzate mentre sono in esecuzione, piuttosto che dopo il fatto.
L'idea alla base dell'elaborazione in situ è di ignorare del tutto l'I/O, afferma Childs. Non scrivi mai nulla su disco. Prendi le routine di visualizzazione e le colleghi direttamente al codice di simulazione e genera un'immagine mentre accade.
Tuttavia, questo approccio non è privo di insidie. Per prima cosa, ci vorrebbe un intero secondo o più per rendere ogni immagine, precludendo la possibilità di interagire con modelli tridimensionali in modo naturale. Un'altra trappola è il fatto che l'interazione con i dati in questo modo brucia i cicli sui mainframe più costosi del mondo.
I supercomputer sono risorse incredibilmente preziose, osserva Childs. Che qualcuno faccia una simulazione e poi interagisca con i dati per un'ora: è una risorsa molto costosa da tenere in ostaggio per un'ora.
Poiché i computer desktop seguono supercomputer e GPU nel mondo dei core multipli e dell'elaborazione massicciamente parallela, Peterka ipotizza che potrebbe esserci una tendenza lontano dai processori specializzati per particolari funzioni. AMD offre già la libreria di codici OpenCL, che rende possibile eseguire il codice progettato per una GPU su qualsiasi chip x86 e viceversa.
Xavier Cavin, fondatore e CEO di Scalable Graphics, un'azienda che progetta software per le più grandi unità di elaborazione grafica utilizzate dalle aziende, sottolinea che il primissimo algoritmo di rendering del volume parallelo funzionava sulle CPU di un supercomputer. Successivamente, le persone hanno iniziato a utilizzare GPU e cluster di GPU per fare la stessa cosa, afferma Cavin. E ora si torna alle CPU. È tornato al punto di partenza.