Téléchargez l'application
Tom's Hardware sur l'App Store
Toute l'actu informatique de référence sur votre iPhone
Oui Non

Aparapi exécute du code Java sur les GPU

par - source: AMD Java Zone

AMD et Nvidia déploient de grands efforts pour convaincre les développeurs de l'intérêt de réécrire leurs applications pour tirer parti de la puissance des processeurs graphiques. Après OpenCL et CUDA voici venir Aparapi, A PARallel API, qui promet d'exécuter du code Java sur le GPU.

Mitonnée par AMD, cette API promet le simplicité : pas besoin d'apprendre un nouveau langage ou de réécrire de grandes portions de code, Aparapi sait intercepter le bytecode d'un programme Java et le transformer en code OpenCL s'il s'y prête. Aparapi se charge également de tous les transferts de données vers et depuis le GPU. Si OpenCL n'est pas disponible, ou si le code n'est pas compatible avec une exécution sur GPU, alors Aparapi se rabat sur une exécution plus classique sur plusieurs threads parallèles, tirant ainsi parti des CPU multicoeurs.

Pour plus d'informations et pour essayer Aparapi, rendez-vous sur le site d'AMD.

Partager:
11
Commentaires
X
Valider

Commentaires
Ajouter un commentaire
eat your potato 13/10/2010 17:49
Afficher
Sh4d3rZ_86 13/10/2010 17:54
Afficher
boub popsyteam 13/10/2010 18:02
Masquer
-0+

je dirais plutot que ça se raproche d'une emulation JIT

anonymous 13/10/2010 18:16
Afficher
magellan 13/10/2010 18:48
Masquer
-0+

Citation :

je dirais plutot que ça se raproche d'une emulation JIT



Pas tout à fait je pense, car en tant que tel il ne "simule" pas l'environnement d'origine (donc une JVM), il intercepterait (si j'ai bien saisi) les instructions pour les déléguer au GPU.

magellan 13/10/2010 18:50
Masquer
-0+

Citation :

>Aparapi sait intercepter le bytecode d'un programme Java et le transformer en code OpenCL

Autrement dit Aparapi ferait exactement le travail inverse d'un compilateur ?

Intéressant ...



Non. La décompilation existe déjà, et ce n'est de cela dont il s'agit. N'oublie pas que le java, c'est du "précompilé" mais qui nécessite ensuite un moteur d'exécution (une JVM).
Là, Aparapi aurait (si j'ai bien saisi) la faculté d'intercepter une exécution donnée (du bytecode exécuté donc), pour ensuite translater les commandes et les déléguer à un GPU (via openCL).

ErGo_404 13/10/2010 19:05
Masquer
-0+

magellan :
Pas tout à fait je pense, car en tant que tel il ne "simule" pas l'environnement d'origine (donc une JVM), il intercepterait (si j'ai bien saisi) les instructions pour les déléguer au GPU.


Ben plutôt que de faire un programme qui se plug à la JVM (et qui ne fonctionnera donc plus à la moindre mise à jour de celle-ci), ils vont probablement reprendre une JVM toute faite et mapper certaines instructions sur le GPU.
J'attends de voir les résultats.

zorro3364 13/10/2010 23:11
Masquer
-0+

du code multi-threadé doit l'être dès son écriture. une méthode pour "l'intercepter" et le transformer aussi profondément, je suis plus que sceptique.

isneok 14/10/2010 05:09
Masquer
--2+

Ce ne serait pas plus simple d'intégrer un processeur Java au sein des CPU?

magellan 14/10/2010 14:01
Masquer
-0+

Citation :

Ce ne serait pas plus simple d'intégrer un processeur Java au sein des CPU?



Surtout pas, ne serait-ce que les problèmes de portabilité.

Sh4d3rZ_86 14/10/2010 19:30
Masquer
-0+

isneok :
Ce ne serait pas plus simple d'intégrer un processeur Java au sein des CPU?


Perso un processeur Java, on risquerait d'y perdre aux niveau performance enfin un truc comme ça

Publicité

Les offres du moment

Newsletters


OK