Stella inattivaStella inattivaStella inattivaStella inattivaStella inattiva
 
WCG_HCC_GPU
Una versione beta dell'applicazione GPU di HCC (Help Conquer Cancer) sta già funzionando all'Istituto di Ricerca Medica Hauptman-Woodward di Buffalo, sede del progetto. I risultati fin qui ottenuti sono molto promettenti: il nuovo client risulta da 6 a 60 volte più veloce dell'attuale applicazione ottimizzata in C++



La missione di Help Conquer Cancer è di migliorare i risultati della cristallografia a raggi X per le proteine. Questo aiuta i ricercatori a capire la struttura delle proteine, e di conseguenza a migliorare la loro comprensione delle fasi iniziali (ad esempio identificando i marcatori diagnostici, indicatori della malattia, che possono aiutare ad individuare uno stadio precoce della stessa), della progressione ed eventualmente del trattamento del cancro.

Da un recente documento sullo stato della ricerca si apprende che l'applicazione è già in fase di test su immagini campione fornite dal laboratorio, lo stesso che esegue questo tipo di ricerche con metodi tradizionali, ovvero affidandosi all'occhio degli esperti. Il software procede analizzando più di 12.000 caratteristiche per ogni singola immagine e grazie a ciò è in grado di classificarle distinguendo l'80% dei cristalli presenti, il 94% dei composti iniziali e il 94% dei precipitati.
Gli sforzi degli sviluppatori si sono concentrati sull'ottimizzazione della funzione GLCM (una sorta di analisi della scansione digitale), che si mangia il 98% del tempo CPU con l'attuale applicazione in C++.

La scelta è caduta su OpenCL 1.0, piuttosto che CUDA o altri, per il supporto che in prospettiva offre a molteplici piattaforme. Inoltre sono state prese in considerazione anche le versioni per Linux e MAC, oltre che la scontata versione per Windows: questo per dare a tutti gli utenti della World Community Grid la possibilità di partecipare a questo progetto. Utilizzando le API di OpenCL in teoria l'applicazione dovrebbe girare su qualsiasi supporto ma tuttavia le differenze nelle architetture hardware non garantiscono l'ottenimento di buone performance su ognuna di esse: ecco perché alla fine gli sviluppatori hanno optato per la stesura di tre diversi codici ottimizzati per CPU, ATI e nVidia.
WCG_HCC_GPU_Prestazioni.
I risultati sono entusiasmanti: mentre il tempo medio di elaborazione su CPU Intel Xeon è di 4092 secondi (singolo thread), una GPU nVidia Tesla C2050 ci mette solo 65 secondi!
I miglioramenti sono evidenti. La versione finale (fin qui) in OpenCL è da 6 a 60 volte più veloce della versione ottimizzata in C++ attuale. Su un test con 50 immagini da analizzare la Tesla C2050 ci ha messo 2 ore mentre la versione classica per CPU ben 3 giorni. I dati forniti (grafico compreso) non sono tra di loro omogenei ma tutti vanno in una direzione: quella del miglioramento sensibile.

Veniamo alla questione della precisione dei risultati: c'è stato bisogno di un compromesso. L'ottimizzazione del codice per OpenCL ha certamente aumentato la velocità di esecuzione ma ha anche portato ad una perdita di precisione. Il codice GPU attuale produce risultati numerici che nel 97% dei casi sono dentici a quelli del codice C++ con una precisione a 4 cifre decimali; ma quello che conta alla fine è se le immagini vengono classificate in maniera corretta o no.
E' stata eseguita una prova incrociata su 4500 immagini test e le due applicazioni a confronto, quella attuale per sola CPU e quella nuova per GPU, hanno differito solamente in 8 casi che però appartengono a una particolare categoria; quella delle immagini ambigue, che vengono cioè classificate diversamente anche dai diversi esperti del settore che le analizzano. Sembra quindi che non ci sia alcuna perdita di precisione.
Non è ancora chiaro se i calcoli vengano eseguiti in singola o doppia precisione; le citate GPU Tesla e Quadro supportano la doppia precisione ma la ATI HD 5770 no, ma potrebbe anche essere un errore di scrittura sul grafico.

Ed infine la tempistica: dal forum di WCG si apprende, grazie all'intervento di uno dei responsabili della Grid, che ai ricercatori di HCC è stato concesso di annunciare i loro progressi ma che non verrà comunicata la data dell'inizio pubblico del test beta fino a che non saranno sicuri che tutto possa funzionare a dovere. Poi però si è lasciato sfuggire che l'intenzione è quella di iniziare prima della fine di gennaio 2012 e che, viste le differenti piattaforme da testare, il periodo di test sarà verosimilmente lungo.
Uno dei responsabili del progetto ha poi confermato che le WU saranno compatibili con tutte le applicazioni che verranno rilasciate, compresa quella attuale in circolazione.

Insomma, forse questa volta ci siamo!

Accedi per commentare

Avatar di boboviz
boboviz ha risposto alla discussione #74782 10/01/2012 21:45
Qualche novità sul client gpu???
Avatar di boboviz
boboviz ha risposto alla discussione #72716 09/11/2011 10:17
baxnimis ha scritto:

in realtà sei tu sul pezzo, ho letto il pdf che hai linkato e ho pensato che era qualcosa di gustoso anche per i "non anglofoni" :D


Dimentico sempre che non tutti "masticano" la lingua della perfida Albione....
Comunque l'unione fa la forza, io ho trovato, tu hai tradotto :cincin:
Avatar di baxnimis
baxnimis ha risposto alla discussione #72709 09/11/2011 05:30
boboviz ha scritto:

E' proprio il pdf che avevo letto qualche giorno fa in inglese. Grande Bax, sempre sul pezzo :ave:
Ha ragione Luivit....come condividere le gpu??


in realtà sei tu sul pezzo, ho letto il pdf che hai linkato e ho pensato che era qualcosa di gustoso anche per i "non anglofoni" :D
Avatar di zAnDe
zAnDe ha risposto alla discussione #72703 09/11/2011 00:00
attendo con impazienza! ...insieme a poem x gpu...!
Avatar di boboviz
boboviz ha risposto alla discussione #72698 08/11/2011 20:53
E' proprio il pdf che avevo letto qualche giorno fa in inglese. Grande Bax, sempre sul pezzo :ave:
Ha ragione Luivit....come condividere le gpu??
Avatar di Luivit
Luivit ha risposto alla discussione #72697 08/11/2011 20:53
si ma per gpu nvidia (ho una 6950), avevo anche una 9800gt ma non la digeriva più :muro:
Avatar di akd
akd ha risposto alla discussione #72690 08/11/2011 20:26
Gpugrid c'è sempre stato... ;)

Comunque sono davvero impaziente di usarla!
Avatar di Luivit
Luivit ha risposto alla discussione #72681 08/11/2011 18:45
da quando non c'era nessun app di un progetto medico per gpu, ora in poco tempo ne escono 2 (questo e poem)
come dividere la gpu? :mad:
bella notizia cmq :asd:
Avatar di Talon
Talon ha risposto alla discussione #72679 08/11/2011 18:37
Ottima notizia...finalmente la mia 5870 potrà tornare ad elaborare :tutipi: :frusta:
Avatar di Tiziano
Tiziano ha risposto alla discussione #72676 08/11/2011 17:32
già,sono stanco di elaborare con Gpu su primegrid
Avatar di campos
campos ha risposto alla discussione #72675 08/11/2011 17:17
morse ha scritto:

:sperem:


Non vedo l'ora... :sbav:

:sperem: :sperem:
Avatar di morse
morse ha risposto alla discussione #72673 08/11/2011 16:31
:sperem: