OpenCL

GDC : OpenGL 4.0 finalisé [11.03.2010 16:23 - ADLG]

Alors que Snow Leopard en est toujours à la version 2.1 (mais la version 3.0 se profile lire OpenGL 3.0 dans Mac OS X 10.6.3 ?), le Khronos Group a annoncé durant la Game Developer Conference que les spécifications d'OpenGL 4.0 étaient disponibles. Les améliorations portent naturellement sur le meilleur support des dernières fonctionnalités des cartes graphiques pour une meilleure qualité de rendu, mais également sur une meilleure gestion des ressources matérielle en délestant le processeur au maximum. Ainsi, deux nouvelles étapes de shaders permettent de calculer la tesselation (triangulation d'une surface) entièrement sur le GPU, il est également possible d'afficher le résultat de données OpenGL, ou en provenance d'API externes telles qu'OpenCL, sans passer par le processeur.

En outre, le consortium a également dévoilé une version 3.3 d'OpenGL qui permet d'apporter certaines améliorations d'OpenGL 4.0 aux cartes graphiques plus modestes.

bulletAilleurs > OpenCL amadoue les trous noirs supermassifs [12.01.2010 16:54 - ADLG]
Voilà un signe qu'OpenCL est en passe d'obtenir le statut de standard qu'Apple a clairement ambitionné pour lui en offrant sa technologie de GPU computing au Khronos Group : un groupe de chercheurs l'a mis à profit pour un modèle physique reproduisant les ondes gravitationnelles générées par des objets stellaires (tels qu'une étoile de la taille de notre soleil) en orbite déclinante autour de trous noirs supermassifs. Ces derniers (que la communauté scientifique dénomme EMRI : Extreme Mass-Ratio Inspirals, d'une masse souvent supérieure à un million de fois celle du soleil) se trouvent au centre de la plupart des galaxies, et dévorent avec appétit étoiles et autres trous noirs.

Un tel modèle est assez complexe à mettre en œuvre et nécessite une grande puissance de calcul, mais se prête particulièrement bien au calcul parallèle. Une tâche toute trouvée pour OpenCL qui se voue précisément à faire effectuer du calcul parallèle aux processeurs graphiques. Les chercheurs ont ainsi pu faire tourner le même code sur différentes configurations, grâce à la vocation universaliste d'OpenCL. Le résultat est sans appel : sur des processeurs de compétition (Cell Broadband Engine et Tesla), les performances sont plus de 25 fois supérieures à celles observées avec un CPU standard.

Les chercheurs notent que les performances sous OpenCL sont similaires à celles observées avec CUDA d'une part pour le processeur Tesla, et avec le Cell SDK pour le processeur du même nom, avec toutefois l'avantage significatif sur ces derniers de ne pas avoir à réécrire le code puisqu'il fonctionne sur toute architecture qui dispose d'un driver pour OpenCL.

Les machines utilisées pour ces tests sont un Blade System QS22 d'IBM doté de 2 processeurs Cell BE cadencés à 3,2 GHz et de 16 Go de RAM d'une part, et de l'autre d'une machine équipée d'un processeur AMD Phenom quad-core à 2,5 GHz et de 4 Go de RAM qui intégrait une carte NVIDIA C1060 Tesla CUDA. Les deux machines fonctionnaient sur Fedora Linux et exploitaient les bibliothèques OpenCL et les compilateurs livrés par les constructeurs.

skitched
bulletMatériel > AMD prend la tête de la course mobile [07.01.2010 11:52 - ADLG]
AMD vient de présenter sa nouvelle gamme de cartes graphiques pour portables, les ATI Mobility Radeon HD 5000. Il s'agit des premières cartes dédiées aux ordinateurs portables qui soient capables de gérer les effets visuels de DirectX 11 et de son pendant OpenGL 3.2 (sachant que Snow Leopard en est toujours à la version 2.1 d'OpenGL…), et la plupart des modèles peut également tirer parti de DirectCompute et OpenCL. Les modèles les plus véloces peuvent déployer un téraFLOPS (mille milliards d'opérations en virgule flottante par seconde), tout en consommant moins d'énergie grâce à leur nouveau design et la gravure en 40 nm.

La nouvelle série est déclinée en quatre gammes : la gamme 5800 concerne les cartes les plus performantes, la 5870 atteint le téraFLOPS, et intègre 800 processeurs de flux, ce qui est également le cas de la 5850 et de la 5830. Les séries 5600 et 5700 sont consacrées au milieu de gamme, dotées de 400 processeurs mais dotées des mêmes fonctionnalités. Enfin, la série 5400 intègre 80 processeurs, avec tout en bas les cartes 5165 et 5145 qui ne gèrent que les effets de DirectX 10 et sont gravées en 55 nm.

Ces cartes devraient être intégrées dans différents ordinateurs portables d'ici la fin du premier semestre.

skitched
bulletUnes - Technologies > Larrabee : c'est où, dites ? [08.12.2009 17:40 - ADLG]
Avec le report de la sortie de Larrabee, qu'on attendait pour 2010, Intel vient d'essuyer un lourd revers. Le fondeur avait en effet placé beaucoup d'espoir dans cette nouvelle technologie pour résister à la déferlante du GPGPU, et n'a pas hésité à peser de tout son poids pour gagner du temps, en vain.

L'augmentation transversale de puissance

Commençons par faire un bref récapitulatif : la logique d'augmentation de la fréquence d'horloge des processeurs est arrivée en bout de course lorsqu'elle a montré ses limites en matière énergétique. Nous sommes arrivés à un palier où, s'il est encore possible d'augmenter le nombre de cycles par seconde qu'un processeur peut effectuer, cette augmentation se fait cependant à un coût énergétique qui ne le justifie plus. Pour pallier cela, on s'est orientés vers une augmentation de puissance transversale, en augmentant le nombre de processeurs, et leur nombre de cores. >> Lire la suite
bulletLogiciels > La CS5 et les co-processeurs graphiques (suite) [01.12.2009 11:20 - FI]
On s'était fait l'écho ce week-end de deux billets parus sur les blogs d'Adobe, l'un concernant Photoshop et l'autre les applications vidéo de l'éditeur, et à chaque fois le thème de l'utilisation éventuelle d'OpenCL dans ces prochaines versions (voir l'article Adobe : la CS5 et les co-processeurs graphiques).

Coïncidence, la veille de leurs publications nous avions justement envoyé au chef produit de Photoshop - John Nack - des questions sur l'utilisation qui serait faite (ou non) d'OpenCL et de Grand Central Dispatch dans Photoshop CS5.

Billets et réponse de Nack se sont croisés, il nous a donné les compléments suivants à son billet :

"La somme de travail nécessaire pour passer de Carbon à Cocoa est énorme (ceux qui ne me croient pas devraient jeter un oeil à Final Cut Pro, dont une nouvelle version qui vient juste de sortir ne peut toujours pas passer au 64 bits à cause de ça). Cela va limiter notre capacité à réaliser encore plus de changements en une seule fois.

Quoi qu'il en soit, nous avons prévu de continuer à faire des progrès pour tirer parti de plusieurs coeurs et du GPU dans la CS5 et celles qui suivront. Je ne peux pas entrer davantage dans les détails pour le moment. Il faut aussi voir qu'OpenCL est souvent considéré, de façon erronée, comme une fonction graphique. En réalité c'est une possibilité offerte aux processeurs graphiques de réaliser des opérations courantes et pas spécifiquement graphiques.

Sur les manières d'accélérer Photoshop, il n'y a pas une recette miracle, une seule méthode d'avant-garde qui optimiserait l'application pour tout le monde. Et Photoshop est utilisé de très nombreuses manières (ça va de l'optimisation d'images pour le web à de gigantesques panoramas photographiques). Très peu de clients dans l'ensemble comprennent véritablement ce que des choses comme le 64 bits, OpenGL, OpenCL et autres signifient. Ils veulent juste être sûrs qu'on travaille d'arrache-pied et qu'on fait des progrès pour offrir les meilleures performances possibles. Et c'est ce que l'on fait.
"

Autre complément, cette fois sous la forme d'un commentaire au billet de John Nack apporté par son collègue Dennis Radeke, spécialiste en vidéo chez Adobe. Il y réitère l'intérêt de l'éditeur pour OpenCL en plus de CUDA "Sans trop entrer dans les détails, nous sommes très sérieux quant à l'idée d'aller vers OpenCL à un moment donné. Si OpenCL avait été prêt à temps, le choix aurait été d'aller vers une solution "ouverte" (ndr : par opposition à CUDA qui a aujourd'hui la préférence d'Adobe). Et de se montrer optimiste quant au passage de CUDA à OpenCL vu que NVIDIA est à l'origine du premier et a fortement contribué au second.

Une chose est sûre en tout cas c'est que la patience est de mise pour voir OpenCL débouler dans les logiciels d'Adobe. Au vu de ces propos, c'est plutôt à partir de la CS6 qu'il faut tabler. En attendant qu'Apple montre aussi l'exemple, ne serait-ce que dans iLife par exemple pour commencer.
bulletLogiciels > Adobe : la CS5 et les co-processeurs graphiques [28.11.2009 00:20 - AZ]
Le spécialiste vidéo Dennis Radeke d'Adobe a donné quelques détails sur l'utilisation de la carte graphique comme co-processeur dans les applications vidéos de la prochaine CS5, After Effects et Premiere Pro. On sait déjà que ces deux applications passeront au 64 bits sur Mac (lire : Premiere Pro et After Effects : 64 bits uniquement), ce qui promet une amélioration des performances. Mais, surtout, elles sauront tirer parti des puces graphiques de nos ordinateurs pour assister le processeur dans les tâches de calcul les plus lourdes, surtout celles massivement parallèles, domaine dans lequel les cartes graphiques excellent.

Pour Adobe, « des technologies comme OpenCL sont emballantes, mais trop jeunes ». Dennis Radeke ajoute : « si l'on doit choisir entre CUDA ou ne pas le faire [en attendant] OpenCL, on choisira le premier ». Cela ne veut pas dire qu'Adobe adoptera la technologie de NVIDIA telle quelle dans ses produits, car comme le rappelle John Nack, Adobe tient à ce que la Creative Suite se comporte de manière équivalente sur toutes les plateformes, quelle que soit la puce graphique intégrée, Intel, AMD/ATI ou NVIDIA.

Il semble donc que l'on s'oriente à court terme vers une intégration par le haut, par petites touches, et avec des solutions maison, en attendant de pouvoir intégrer le GPU dans le cœur même de la suite avec des technologies avancées comme OpenCL.
bulletTechnologies > ATI accélère sur OpenCL [14.10.2009 15:14 - FI]
La nouvelle ne concerne pas directement le Mac mais elle montre qu'OpenCL, né sous l'égide d'Apple, creuse son sillon. ATI/AMD livre une nouvelle version bêta du kit de développement d'ATI Stream SDK qui inclut cette fois le support plein et entier d'OpenCL. Son absence jusque là avait surpris du fait de l'implication d'AMD dans ce standard.

Ce kit se destine à Windows XP, Vista, 7 ainsi que Linux oepnSUSE et Ubuntu. Un encouragement pour les développeurs à utiliser OpenCL pour certaines de leurs applications qui apporte un renfort supplémentaire et concret à cette technologie sur laquelle Apple a misé pour Snow Leopard.

Sur le même sujet :
AMD vante les mérites dOpenCL
bulletAilleurs > NVIDIA présente une carte dédiée au GPGPU [05.10.2009 11:05 - ADLG]
Intel et NVIDIA se sont lancées dans une guerre ouverte qui risque de faire quelques dommages : alors que le constructeur de processeurs s'apprête à intégrer un chipset graphique dans tous ses processeurs, forçant ainsi la main de tous ses partenaires, NVIDIA a répondu à l'offensive avec une réponse du berger à la bergère, en offrant une carte graphique toute dévolue au GPU computing, répondant au petit nom de Fermi.

Gravé en 40 nm et offrant pas moins de 3 milliards de transistors, cette architecture a été conçue avec le GPGPU comme ligne de mire. Dotée de 512 unités de calcul, soit plus du double de la GT 200, Fermi promet d'être un monstre à broyer du calcul. Le directeur scientifique de NVIDIA, Bill Dally, a d'ailleurs insisté sur le fait que Snow Leopard tirerait parti de cette nouvelle architecture par le biais d'OpenCL. Mais Fermi offre en fait un nouveau compromis : alors que cette carte sera plus efficace pour le GPU computing qu'une autre carte 3D, elle offrira de moindres performances en accélération 3D pure et dure. On attend les premiers modèles basés sur cette architecture pour le début de l'année prochaine, alors qu'Intel continue de travailler sur l'arlésienne Larabee.

Reste à voir quel choix Apple compte faire dans cette guerre déclarée.

bulletAilleurs > Nvidia met ses pilotes à l'OpenCL [29.09.2009 10:14 - FI]
NVIDIA l'un des promoteurs d'OpenCL propose ses premiers pilotes de cartes graphiques optimisés pour OpenCL et à destination de Windows et de Linux. Ce qui pourrait inciter les développeurs à se pencher sur cette technologie initiée par Apple et mise en avant dans Mac OS X 10.6. Plusieurs cartes NVIDIA présentes dans les Mac sont déjà compatibles avec ce langage de programmation : les GeForce 9400M, 9600M GT, 8600M GT, GT 120, GT 130, GTX 285, 8800 GT, 8800 GS, Quadro FX 4800 et FX5600 (et deux chez son concurrent, les ATI Radeon 4850 et 4870).

Sur le même sujet :
Quel Mac pour Snow Leopard ?
bulletMac OS X > Premiers tests avec OpenCL [31.08.2009 00:02 - CL]
OpenCL est une jeune technologie très prometteuse. Afin d'avoir une idée du gain qu'est susceptible d'apporter cette nouveauté apparue dans Snow Leopard, Andreas Michalak a mis au point un logiciel appelé OpenCL Benchmark. L'intérêt de cet outil, c'est qu'il lance le même algorithme optimisé pour OpenCL deux fois : une fois avec le processeur, une autre avec le GPU.

Bien évidemment, le gain varie en fonction de la configuration de votre ordinateur. Ainsi, sur un MacBook Pro Unibody, le bench est effectué en 2,8 secondes lorsque l'on fait appel à la GeForce 9600M GT, en 3,08 secondes lorsque l'on fait appel à la GeForce 9400M et en 15,45 secondes avec un processeur Intel Core 2 Duo à 2,4 GHz. Sur cette configuration, le gain de performances est donc flagrant.

Sur un MacBook Pro Penryn doté d'une GeForce 8600M GT, le gain l'est beaucoup moins. Le GPU achève la tâche en 15,28 secondes alors que le processeur cadencé à 2,4 GHz l'effectue en 16,05 secondes.


On comprend mieux pourquoi Apple a réservé cette technologies aux dernières générations de GPU.

Sur le même sujet :
- Hydra est jusqu'à 2,5 fois plus rapide sous Snow Leopard
- Snow Leopard vs Leopard : tests de performances
bulletTechnologies > AMD vante les mérites dOpenCL [06.08.2009 08:18 - FI]
Apple ne nous ayant pas franchement régalé, lors de la dernière WWDC, de démonstrations montrant les mérites d'OpenCL dans Snow Leopard, on se tournera vers AMD/ATI pour en avoir un léger aperçu. Le langage OpenCL offre à un logiciel la possibilité d'utiliser toutes les ressources de calculs d'une machine pour exécuter des opérations (processeur principal, différents coeurs, carte graphique et autres). OpenCL n'est pas destiné exclusivement à des applications graphiques. Des logiciels de virtualisation de systèmes d'exploitation par exemple peuvent en tirer profit.

Dans le cas présent, le démonstrateur utilise un logiciel où l'on mélange des particules de flammes avec des particules de neige. Dans le premier cas, l'application ne peut utiliser qu'un seul coeur de la machine (un PC 4x 6 coeurs à base de processeurs Opteron). Puis le logiciel se voit offrir - via OpenCL - la possibilité de s'appuyer sur tous les coeurs présents (il y en a donc 24).


L'exécution des calculs, qui était au départ un peu lente et qui souffrait d'un manque de fluidité pour l'utilisateur manipulant ces particules, retrouve alors un second souffle. Le démonstrateur précise que l'application utilisée dans les deux cas de figure est strictement la même, le code n'a pas changé. Simplement, le moteur logiciel OpenCL est mis à profit dans la seconde partie de la démo.

AMD fait partie des acteurs engagés dans la promotion d'OpenCL. Il a rendu publique hier la version bêta - pour Linux et Windows - d'un kit de développement pour utiliser OpenCL avec ses processeurs et ses cartes ATI.

Sur le même sujet :
Lexique : si vous avez raté le début…
bulletAilleurs > NVIDIA : le GPU, le co-processeur du futur [17.06.2009 12:48 - CL]
Le processeur graphique (GPU) est appelé à devenir le coprocesseur de l'ordinateur. C'est ce qu'indique en substance Jen-Hsun Huang. Le PDG de Nvidia, prend l'exemple d'Apple, qui selon lui est un précurseur dans le domaine. Tous les portables de la gamme Apple sont en effet équipés d'un processeur Intel et d'un processeur graphique NVIDIA qui sera capable d'épauler le CPU sur certaines tâches grâce à OpenCL.

Huang doit sans doute maintenant chercher à convaincre Apple d'adopter sa plate-forme Tegra. Cette puce tout-en-un, conçue pour les smartphones et les netbooks, qui comprend un coeur ARM et un circuit graphique GeForce. Mais jusque-là, la firme de Cupertino n'a pas donné suite, préférant très certainement préparer sa propre solution avec PA Semi.

Sur le même sujet :
- Quelles applications pour OpenCL ?
- OpenCL accéléré pour Snow Leopard
bulletUnes - Mac OS X > Snow Leopard : pas de miracle en vue ? [01.06.2009 20:29 - ADLG]
Avec l'arrivée prochaine de Snow Leopard, et de ses deux technologies phares, à savoir OpenCL et Grand Central, on parle de plus en plus de parallélisme.

Les processeurs en ont en effet terminé avec la progression verticale : au lieu d'augmenter la puissance brute des processeurs, on augmente leur nombre. On obtient ainsi, du moins potentiellement, un bien meilleur rapport puissance/consommation. Le problème c'est qu'il faut désormais bâtir les logiciels très différemment pour en tirer parti. Ainsi, il faut couper les tâches en petits morceaux afin de les faire exécuter simultanément par les différents processeurs et leurs multiples cores. L'opération n'est résolument pas aisée, et nécessite une refonte de l'architecture des logiciels. Si Grand Central a pour vocation de veiller à éviter les embouteillages et permettre aux multiples opérations de se dérouler sans encombre, il ne permet pas pour autant de faire des miracles, et les développeurs devront malgré tout déterminer eux-mêmes quelles tâches se plient le mieux au parallélisme.
>> Lire la suite
bulletTechnologies > Nvidia vante l'accélération par carte graphique [24.04.2009 16:40 - FI]
A défaut d'infos de la part d'Apple on peut prendre la mesure de ce qu'OpenCL apportera dans Mac OS X Snow Leopard avec ce qui se fait chez d'autres. Nvidia et Nero, éditeur d'un très populaire logiciel d'encodage sur Windows, ont annoncé la sortie d'une mise à jour de cette application - Nero Move it - qui utilise maintenant la carte graphique du PC pour ses traitements.

Le logiciel s'appuie sur CUDA de Nvidia, une technologie qui donne les moyens aux développeurs de confier les calculs de leurs logiciels à la carte graphique. Il peuvent solliciter CUDA grâce à différents langages de programmation, dont OpenCL (voir aussi l'article OpenCL se montre peu à peu).

Nero explique dans son communiqué de presse que l'encodage d'une vidéo HD à destination d'un iPod ne prend plus que quelques minutes au lieu de quelques heures.

Un exemple plus précis est donné qui illustre un encodage vidéo AVI vers H.264 prenant 2h11 en utilisant le processeur du PC contre 34 min avec le processeur de la carte graphique. Dommage toutefois que la nature et surtout sa puissance de la puce principale de l'ordinateur ne soient pas indiquées, on aurait bien mieux jugé du bénéfice apporté. Si la puce est récente l'écart est spectaculaire, si elle date un peu, la performance est à relativiser.

Nerocuda
bulletTechnologies > OpenCL se montre peu à peu [22.04.2009 11:09 - FI]
NVIDIA a livré cette semaine un kit de développement et des pilotes pour OpenCL, cette collection d'interfaces de programmation qui figurera dans le prochain système d'Apple (voir l'article OpenCL accéléré pour Snow Leopard).

OpenCL permettra aux développeurs de logiciels, pas exclusivement issus du domaine graphique, d'accélérer l'exécution de leurs applications en utilisant les capacités de calculs de la carte graphique. Et plus largement, les unités de traitement présentes dans un ordinateur, et à terme dans les mobiles.

NVIDIA et Apple comptent parmi les principaux architectes d'OpenCL, leurs ingénieurs ayant été présents en nombre dans la définition de ces API. AMD, Intel et ARM y ont également largement contribué afin d'en faire une solution ouverte, multi-plateforme et débarrassées de royalties.

Côté Mac, Apple n'a guère produit d'exemples - du moins hors du cercle des développeurs - sur les avantages amenés par OpenCL. La prochaine conférence développeur le 8 juin amènera peut-être du frais sur ce point. On trouve toutefois ça et là des exemples, non spécifiques au Mac. Par exemple sur YouTube la première démo réalisée par NVIDIA avec une simulation de mouvements de particules. Et chez Havok avec la démonstration très réaliste de mouvements de tissus et de matières dont le rendu a été réalisé via OpenCL.

havockopencl

1 / 3 >>