Le APU Fusion in un HPC, prove tecniche di futuro

di Manolo De Agostini, 03 novembre, 2011 11:45

AMD e Penguin Computing hanno installato Altus A2A00 al Sandia National Labs di Albuquerque. Si tratta di un sistema HPC dotato di APU della famiglia Llano. Le due aziende collaborano per capire le potenzialità delle soluzioni di calcolo eterogenee con unità grafiche integrate sullo stesso die della CPU.

Usare le APU AMD per soluzioni HPC (high performance computing) si può. Penguin Computing, in collaborazione con AMD, ha realizzato il primo cluster al mondo con APU della serie A e lo ha installato con successo presso i Sandia National Labs di Albuquerque, New Mexico.

Il sistema - chiamato Altus A2A00 - è dotato di 104 rack 2U, ciascuno con una APU quad-core e 320/400 stream processor (AMD parla di A8-3850, altre fonti sono meno precise). Altus A2A00 è in grado di raggiungere i 59,6 Teraflops di potenza. Ogni rack supporta fino a 64 GB di memoria DDR3-1600 o DDR3-1866, e offre otto slot per la rimozione a caldo di hard disk da 3,5". 

Sono disponibili diverse opzioni di connettività, come una soluzione QDR InfiniBand 40Gbps, una scheda di rete Ethernet 10Gbps e soluzioni dual o quad Ethernet da 1Gbps. Non mancano slot PCIe per collegare schede aggiuntive, porte SATA, USB e uscite video.

L'idea è quella di sfruttare le capacità di calcolo eterogeneo di queste soluzioni, ovvero compiere calcoli sia grazie ai core x86 che mediante le unità grafiche integrate. Da tempo le schede video stanno guadagnando spazio nel settore HPC, grazie alle soluzioni dedicate Nvidia Tesla o AMD FireStream capaci di svolgere operazioni altamente parallele. Optare per delle APU potrebbe essere un compromesso accettabile tra complessità del sistema e consumi.

L'Altus A2A00 è stato appunto realizzato perciò non per raggiungere prestazioni elevate, ma per permettere ad AMD e Penguin di capire come usare questo tipo di soluzioni in ambito HPC, realizzare soluzioni efficienti e software in grado di avvantaggiarsi delle risorse hardware.

Le unità grafiche delle APU possono essere sfruttate attraverso il framework di programmazione OpenCL e poiché tutto è su un unico die, programmare le APU è più semplice, i colli di bottiglia dei dati tra GPU e memoria principale non ci sono e si elimina la duplicazione dei dati. Al Sandia National Labs sono interessati alla combinazione di interconnessioni a bassa latenza che supportano RDMA (Remote Direct Memory Access), come Infiniband, e le APU.

Ti potrebbe interessare anche:

 

Notizie dal web

 

Commenti dei lettori (11)

1/2 avanti   
EpoX 03/11/2011 12:08
+3
"Optare per delle APU potrebbe essere un compromesso accettabile tra complessità del sistema e consumi."

E non solo, permette alla GPU di accedere alla ram di sistema, tipicamente molto più grande di quella on board sulle schede gpu dedicate.

Avere GPU potenti per trattare in parallelo grosse moli di dati va bene, ma se non hai la ram per darle in pasto quei "molti dati"..

Fusion è una bella idea, ma il suo punto critico è il software: se non c'è software consumer che sfrutti il fatto di avere GPU e CPU integrate...

...non si esce dall'ambito HPC.
xhogan89x 03/11/2011 12:13
+6
ahaha l' immagine di apu... XD
dwg 03/11/2011 12:14
+3
Geniale l'immagine
grng 03/11/2011 12:28
+1
Sfruttando per bene opencl, queste soluzioni potrebbero avere un buon mercato
dolomiticus 03/11/2011 13:50
+3
Purtroppo è tutta una questione di software ottimizzato.
Io penso che se il software fosse opportunamente sviluppato buldozzer andrebbe na meraviglia.
Il_Saggio 03/11/2011 14:34
-1

 Originariamente inviata da EpoX

"Optare per delle APU potrebbe essere un compromesso accettabile tra complessità del sistema e consumi."

E non solo, permette alla GPU di accedere alla ram di sistema, tipicamente molto più grande di quella on board sulle schede gpu dedicate.

Avere GPU potenti per trattare in parallelo grosse moli di dati va bene, ma se non hai la ram per darle in pasto quei "molti dati"..

Fusion è una bella idea, ma il suo punto critico è il software: se non c'è software consumer che sfrutti il fatto di avere GPU e CPU integrate...

...non si esce dall'ambito HPC.


La memoria sarà anche quella di sistema e sarà anche più capace, ma è molto più lenta di quella dedicata. Se i dati devi farli entrare ed uscire dalla GPU perché non c'è abbastanza cache per i risultati intermedi (e sulle APU la cache è minima, almeno Intel ha collegato la GPU alla cache di 3° livello della CPU), tutta la potenza di calcolo la sprechi ad attendere che i dati siano salvati e ricaricati.

Il fatto che non c'è SW consumer che usi le GPU è semplice: non ci sono molti algoritmi che sono parallelizzabili (multi-threaded) e ancora meno sono gli usi di questi algoritmi su una quantità di dati tale da richiedere centinaia di thread per lo stesso calcolo. I più classici sono l'audio e il video. Per l'audio basta una scheda audio con DSP, per il video le soluzioni dedicate (come il quick sync di Intel) dimostrano che si può ottenere di più consumando di meno quando gli algoritmi da applicare sono noti (come i codec audio/video).
Al di fuori di questo rimangono i filtri di Photoshop e poco altro (e non siamo proprio ancora a livello consumer).

La propaganda nvidia e AMD sull'uso delle GPU per l'accelerazione SW per uso casalingo è una bufala colossale. Come lo è quello di credere che un chip a 8 a frequenza ridotta core sia più veloce di uno a 4 a frequenza maggiore. Il SW di casa non sfrutta nessuna caratteristica di parallelizzazione.
L'accelerazione via GPU è utile esclusivamente per professionisti che fanno calcoli particolari e questi non usano SW "consumer". O per centri di calcolo appositi dove il calcolo parallelo è una necessità più che una richiesta.
Ecco perché OpenCL non farà mai il botto in ambiente consumer. Ecco perché la soluzione proprietaria CUDA di nvidia vivrà ancora per lungo tempo nel campo professionale. Ed ecco perché tutte le nuove architetture di CPU includono costantemente un miglioramento delle unità e delle istruzioni di calcolo a virgola mobile vettorizzate. Se il futuro prevedesse che usare gli shader della GPU per fare calcoli in maniera normale fosse cosa facile, le AVX e le sue seguenti estensioni oltre ai transistor necessari per eseguirle non sarebbero mai state create.
tuttodigitale 03/11/2011 16:27
0
Con l'architettura BD il numero delle FPu è addirittura diminuito rispetto alla passata generazione (sebbene sia migliorata e di molto). Questo non toglie che oggi con la sola gpu si faccia molto poco.

LA banda passante non è poi così limitante. Facciamo due conti:
A conti fatti per raggiungere il numero di stream processor di una hd5870, c'è bisogno di 4 apu llano, e quindi si ha un bus effettivo di 512 bit. Già così le 4 apu potrebbero contare su una bandwidth di 120GB/s valore praticamente coincidente con la hd5850, inferiore ai 153 GB/s della hd5870, ma bisogna comunque ricordarsi della frequenza ben meno spinta della gpu di un a8.
In pratica il rapporto Potenza_bruta/banda_passante coincide con quella offerta dalle schede video discrete (e sfido a trovare un sistema che consuma in full load 92W)
marino7 04/11/2011 08:53
0
per me potrebbe essere un'ottima soluzione, tutto dipende da come tratta il software. Ad esempio in calcoli CFD è spesso necessaria tanta ram e si sa che una gpu di fascia alta va anche 10 volte più veloce di una cpu di fascia alta, se ha a disposizione la memoria.
Questo metodo permette di avere a disposizione facilmente la memoria necessaria, anche se forse un po' più lenta.
boboviz 04/11/2011 09:18
0

 Originariamente inviata da Il_Saggio

Ecco perché OpenCL non farà mai il botto in ambiente consumer.



Ma anche no. Quelli di BOINC stanno per rilasciare il client con l'opencl già integrato e ci sono progetti che già usano questo linguaggio per calcoli su gpu con molte soddisfazioni...
Il_Saggio 04/11/2011 09:53
0

 Originariamente inviata da boboviz

Ma anche no. Quelli di BOINC stanno per rilasciare il client con l'opencl già integrato e ci sono progetti che già usano questo linguaggio per calcoli su gpu con molte soddisfazioni...


Il progetto Boing non è un SW che la massa usa per fare qualcosa.
E' un sistema che fa calcoli di diverso tipo in maniera distribuita come un server HPC.
Ripeto e ribadisco, non c'è SW consumer che sia in grado di avvantaggiarsi dell'uso delle GPU, così come non c'è persona normale che si avvantaggerebbe di poter mangiare 20Kg di carne al giorno. Se te li scaricano davanti a casa tutti i giorni, allora magari ti apri uno Zoo con un paio di tigri bianche malesi in via di estinzione (così fai opera buona), ma se non ce l'hai ne fai anche a meno.
1/2 avanti   
Devi essere collegato scrivere un commento!

Accesso utenti

Nome utente:
Password:
 
Segui Tom's Hardware!
Informazioni su Tom's Hardware
powered by
Powerd by Aruba Cloud Powerd by Intel Powerd by Dell

Copyright © 2014 - 3Labs Srl - A Purch Company. Tutti i diritti riservati.
P.Iva 04146420965 - Testata registrata presso il Tribunale di Milano, nr. 285 del 9/9/2013
Clicca per i dettagli