Le Khronos Group vient d’annoncer que les spécifications de la technologie OpenCL sont désormais complètes et finalisées. Comme pour l’OpenGL, le nouveau venu a pour but de tout rassembler autour d’une technologie ouverte, sans royalties et multiplateforme.
OpenCL et OpenGL ont ceci en commun qu’elles visent toutes deux la carte graphique présente dans l’ordinateur. OpenGL permet ainsi aux développeurs de créer des applications graphiques, le GPU calculant alors l’ensemble du travail et accomplissant donc sa mission. Avec OpenCL, la carte graphique calcule aussi, mais dans un domaine complètement différent : le travail normalement réservé au CPU.
C’est une évolution que l’on voit depuis quelques années : orienter vers le GPU des instructions qui auraient dû être traitées par le CPU. La partie la plus visible de ce changement se trouve dans les systèmes d’exploitation : Windows, Mac OS X et Linux ont désormais tous une ou plusieurs technologies qui permettent à la carte graphique de gérer tout ou partie de l’interface. Mais OpenCL permet d’aller beaucoup plus loin en permettant aux développeurs de créer des applications dont les calculs seront envoyés au GPU, sans que cela ait un rapport avec l’affichage.
Comparé à un CPU, le GPU calcule bien plus vite. Dans les grandes lignes, le CPU est un couteau suisse, capable de s’occuper d’un grand nombre de situations, à un certain niveau de vitesse. Le GPU n’aurait alors qu’une seule lame, mais d’une redoutable efficacité. La puissance offerte par les cartes graphiques est aujourd’hui colossale, comme nous le disait récemment Éric Mahé, organisateur du GPU Camp qui s’est tenu samedi dernier à Paris. Pourquoi ne pas donc exploiter ces capacités ailleurs que dans les jeux ?
Le problème est que le GPU ne sait faire qu’un nombre limité de choses, et qu’il faut lui parler dans un langage qu’il comprend. Le code d’une application n’a plus rien à voir et il faut une structure bien précise pour faire travailler la carte graphique. OpenCL est ce genre de structure et sera intégré à Snow Leopard, le prochain Mac OS X. D’ailleurs, le nombre de partenaires de cette technologie montre clairement l’intérêt qu’elle représente : 3DLABS, Activision Blizzard, AMD, Apple, ARM, Barco, Broadcom, Codeplay, Electronic Arts, Ericsson, Freescale, HI, IBM, Intel Corporation, Imagination Technologies, Kestrel Institute, Motorola, Movidia, Nokia, NVIDIA, QNX, RapidMind, Samsung, Seaweed, TAKUMI, Texas Instruments et l’Université d’Umeå.
On remarquera l’absence de Microsoft et pour cause : DirectX 11 intégrera les Compute Shaders, qui visent le même objectif qu’OpenCL. Difficile pour l’instant de dire quelle technologie remportera la partie, mais OpenCL est multiplateforme et risque de trouver rapidement des développements. D’un autre côté, DirectX 11 sera présent dans Windows 7 et disponible pour Vista, et le domaine du jeu vidéo y viendra nécessairement.
À noter enfin qu’OpenCL, comme DirectX 11, sera indépendant des modèles des marques de cartes graphiques. Ce sont donc des solutions différentes de CUDA par exemple, qui ne peuvent fonctionner qu’avec certains modèles de cartes NVIDIA.
Les développeurs intéressés par OpenCL pourront se rendre sur cette page pour en apprendre davantage.
OpenCL et OpenGL ont ceci en commun qu’elles visent toutes deux la carte graphique présente dans l’ordinateur. OpenGL permet ainsi aux développeurs de créer des applications graphiques, le GPU calculant alors l’ensemble du travail et accomplissant donc sa mission. Avec OpenCL, la carte graphique calcule aussi, mais dans un domaine complètement différent : le travail normalement réservé au CPU.
C’est une évolution que l’on voit depuis quelques années : orienter vers le GPU des instructions qui auraient dû être traitées par le CPU. La partie la plus visible de ce changement se trouve dans les systèmes d’exploitation : Windows, Mac OS X et Linux ont désormais tous une ou plusieurs technologies qui permettent à la carte graphique de gérer tout ou partie de l’interface. Mais OpenCL permet d’aller beaucoup plus loin en permettant aux développeurs de créer des applications dont les calculs seront envoyés au GPU, sans que cela ait un rapport avec l’affichage.
Comparé à un CPU, le GPU calcule bien plus vite. Dans les grandes lignes, le CPU est un couteau suisse, capable de s’occuper d’un grand nombre de situations, à un certain niveau de vitesse. Le GPU n’aurait alors qu’une seule lame, mais d’une redoutable efficacité. La puissance offerte par les cartes graphiques est aujourd’hui colossale, comme nous le disait récemment Éric Mahé, organisateur du GPU Camp qui s’est tenu samedi dernier à Paris. Pourquoi ne pas donc exploiter ces capacités ailleurs que dans les jeux ?
Le problème est que le GPU ne sait faire qu’un nombre limité de choses, et qu’il faut lui parler dans un langage qu’il comprend. Le code d’une application n’a plus rien à voir et il faut une structure bien précise pour faire travailler la carte graphique. OpenCL est ce genre de structure et sera intégré à Snow Leopard, le prochain Mac OS X. D’ailleurs, le nombre de partenaires de cette technologie montre clairement l’intérêt qu’elle représente : 3DLABS, Activision Blizzard, AMD, Apple, ARM, Barco, Broadcom, Codeplay, Electronic Arts, Ericsson, Freescale, HI, IBM, Intel Corporation, Imagination Technologies, Kestrel Institute, Motorola, Movidia, Nokia, NVIDIA, QNX, RapidMind, Samsung, Seaweed, TAKUMI, Texas Instruments et l’Université d’Umeå.
On remarquera l’absence de Microsoft et pour cause : DirectX 11 intégrera les Compute Shaders, qui visent le même objectif qu’OpenCL. Difficile pour l’instant de dire quelle technologie remportera la partie, mais OpenCL est multiplateforme et risque de trouver rapidement des développements. D’un autre côté, DirectX 11 sera présent dans Windows 7 et disponible pour Vista, et le domaine du jeu vidéo y viendra nécessairement.
À noter enfin qu’OpenCL, comme DirectX 11, sera indépendant des modèles des marques de cartes graphiques. Ce sont donc des solutions différentes de CUDA par exemple, qui ne peuvent fonctionner qu’avec certains modèles de cartes NVIDIA.
Les développeurs intéressés par OpenCL pourront se rendre sur cette page pour en apprendre davantage.
Source :
Khronos Group
Vincent Hermann
le 9 décembre 2008 à 12:39
(23 727
lectures)
Actualités et brèves relatives
- 02 / 12 / 2008 : GPU Camp : la révolution des cartes graphiques, samedi à Paris
- 19 / 11 / 2008 : Snow Leopard pourrait sortir dès le premier trimestre 2009
- 28 / 10 / 2008 : DirectX 11 : calculs déviés vers les GPU et tesselation pour tous
- 20 / 10 / 2008 : Snow Leopard : Finder en Cocoa, Exchange et ImageBoot
- 12 / 09 / 2008 : AMD lance deux FirePro sur GPU RV770, et le SDK Stream 1.2
- 21 / 08 / 2008 : IDF 2008 : AMD se décide à critiquer les annonces d'Intel
- 11 / 07 / 2008 : DirectX 11 : Shader Models 5.0 et GPGPU pour tous ?
- 24 / 06 / 2008 : Snow Leopard : de nouvelles précisions sur les nouveautés







