Accelerazione via GPU Computing anche per applicazioni Java
di Paolo Corsini pubblicata il 25 Settembre 2013, alle 13:01 nel canale Private Cloud
In concomitanza con la conferenza Oracle JavaOne IBM dimostra come sia possibile accelerare le elaborazioni Java in modo sostenuto attraverso la potenza di calcolo delle GPU; per il momento tutto grazie a CUDA e alle architetture NVIDIA
Abbiamo visto negli ultimi anni un utilizzo sempre più diffuso delle GPU per compiti che non siano quelli legati alla tradizionale elaborazione grafica. Si parla in questi casi di GPU Computing, quindi dell'utilizzo dei chip grafici per elaborazioni parallele che riescono in questo modo a venir completate in meno tempo rispetto a quanto ottenibile con le tradizionali CPU.
In occasione della conferenza Oracle JavaOne il Chief Technology Officer per Java di IBM, John Duimovich, ha confermato come l'accelerazione delle operazioni via GPU verrà estesa anche alla piattaforma Java nel prossimo futuro.
Utilizzando Java JDK 8 in abbinamento alle librerie CUDA di NVIDIA, Duimovich ha dimostrato di poter ottenere significativi incrementi delle prestazioni velocistiche. Eseguendo tradizionali Array Java si ottengono benefici prestazionali compresi tra un minimo di 2x sino a 48x, a seconda della dimensione del data set di partenza.
Java è largamente utilizzato in molte applicazioni per il mondo web ma trova spazio anche in altri campi spaziando dall'analisi di dati finanziari alle applicazioni scientifiche, sino alla gestione di analisi avanzate sulle immagini e alla condivisione di sistemi anti frode condivisi. Da questo ne deriva la portata dell'accelerazione di Java via GPU, in grado di aprire spazio a nuovi ambiti applicativi con tempi di elaborazione che siano sempre più contenuti.
Ulteriori informazioni sono disponibili in questo post di blog a cura di Sumit Gupta, general manager della Tesla accelerated computing business unit di NVIDIA.
9 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - infoCasomai ordinando, gli array non si ESEGUONO...
perche è piu facile è veloce fare una versione cuda che è anche ben supportata e spinta da nvidia. Mentre la versione opencl renderebbe il tutto piu interoperabile ma con molto piu lavoro quindi si fara se il mercato lo chiede.
Inoltre nell'ambito professionara il cuda è infinitamente piu utilizzato e diffuso dell'opencl come linguaggio quindi era prevedibile che un azienda enterprise come oracle punti sul leadere di mercato per un suo software di punta.
Quanto a openGL, direi che ormai lo standard di fatto per il GPU programming è CUDA...può non piacere, ma è così.
Quanto a openGL, direi che ormai lo standard di fatto per il GPU programming è CUDA...può non piacere, ma è così.
Sinceramente dubito che intendano tagliare fuori la maggior parte dell'utenza che utilizza schede Intel e AMD.
http://www.infoq.com/news/2013/09/java-hsail
http://openjdk.java.net/projects/sumatra/
In questo caso, sarebbe la VM a decidere automaticamente se usare la CPU o la GPU a seconda del lavoro da fare e nel momento in cui vengono utilizzate specifiche API introdotte con Java 8 per la parallelizzazione dell'elaborazione.
Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".