Piattaforme di programmazione: NVIDIA rilascia CUDA 5.5

Roberto Imbastaro

NVIDIA ha annunciato oggi la disponibilità al pubblico della più recente versione della piattaforma di programmazione e calcolo in parallelo NVIDIA® CUDA®, che per la prima volta offre il supporto alle piattaforme ARM-based.

Da oggi disponibile per il download gratuito http://developer.nvidia.com/cuda-toolkit, la release candidate 5.5 di CUDA porta la potenza del GPU-accelerated computing sulle piattaforme ARM, l’ecosistema di processori con il più veloce tasso di crescita al mondo, 10 volte maggiore rispetto a quello del mercato basato su CPU x86.

La nuova release di CUDA offre ai programmatori una piattaforma solida e semplice da utilizzare per lo sviluppo delle scienze avanzate, l’ingegneria, il ‘mobile’ e il calcolo ad alte prestazioni (HPC), su sistemi basati sia su CPU ARM sia x86.

"Da quando gli sviluppatori hanno iniziato a utilizzare CUDA nel 2006, le generazioni successive, esponenzialmente più veloci, di GPU CUDA, hanno incrementato decisamente le prestazioni delle applicazioni su sistemi x86.", ha dichiarato Ian Buck, direttore generale GPU Computing Software di NVIDIA. "Con il supporto per ARM, il nuovo CUDA offre agli sviluppatori una notevole flessibilità per aggiungere velocemente e con facilità l’accelerazione delle GPU alle applicazioni sull’ampia gamma di piattaforme HPC di nuova generazione."

La combinazione di acceleratori GPU CUDA-enabled ad alte prestazioni con SoC basati su ARM a basso consumo consente ai sistemi ARM-based di raggiungere nuovi mercati, che richiedono i massimi livelli di prestazioni di calcolo ad alta efficienza energetica. Questi segmenti di mercato comprendono: sistemi di difesa, automotive, esplorazioni energetiche, mobile computing, robotica, ricerca scientifica, HPC e altro.

Caratteristiche di programmazione in parallelo
Oltre a fornire il supporto nativo alla piattaforme ARM, la release 5.5 di CUDA assicura livelli di performance più elevati e una serie di nuove caratteristiche per la produttività avanzata, tra cui:

• Supporto Hyper-Q migliorato – è ora supportato in processi MPI multipli su tutti i sistemi Linux
• MPI Workload Prioritization – Consente agli sviluppatori di applicazioni di dare priorità ai flussi CUDA su percorsi critici, ottimizzando i tempi di esecuzione delle applicazioni
• Nuove performance analysis guidate – Visual Profiler e Nsight Eclipse Edition guidano adesso gli sviluppatori passo-passo nel processo di identificazione dei colli di bottiglia e dell’ottimizzazione delle applicazioni
 Cross-compile rapido su x86 – Riduce i tempi di sviluppo per le applicazioni di grandi dimensioni, consentendo agli sviluppatori di compilare il codice ARM su veloci processori x86 e successivamente trasferire l’applicazione compilata per ARM

Inoltre, CUDA 5.5 offre una completa suite di strumenti di programmazione, librerie matematiche e documentazione GPU-accelerated, sia per x86, sia per piattaforme ARM-based:

• Potenti strumenti di programmazione – Pieno supporto per il compilatore CUDA, strumenti per il debugging e l’analisi delle prestazioni
• Librerie matematiche GPU-accelerated – FFT, RNG, BLAS, sparse matrix operations e quasi 5.000 primitive di segnale e di image-processing della NVIDIA Performance Primitives (NPP) library
• Documentazione / guide alla programmazione – Una completa documentazione, esempi di codice e molto altro ancora per aiutare gli sviluppatori a imparare rapidamente a beneficiare dall’accelerazione del GPU Computing