URL: https://linuxfr.org/news/formation-opencl-en-contribuant-a-gimp Title: Formation OpenCL en contribuant à GIMP Authors: Jehan Benoît Sibaud Date: 2016年01月31日T20:43:41+01:00 License: CC By-SA Tags: opencl, gegl, gimp, gpu et cpu Score: 27 L'encyclopédie Wikipédia introduit [OpenCL](https://fr.wikipedia.org/wiki/OpenCL) ainsi:> OpenCL (Open Computing Language) est la combinaison d'une API et d'un langage de programmation dérivé du C, proposé comme un standard ouvert par le [Khronos Group](https://fr.wikipedia.org/wiki/Khronos_Group). OpenCL est conçu pour programmer des systèmes parallèles hétérogènes comprenant par exemple à la fois un CPU multi-cœur et un GPU. OpenCL propose donc un modèle de programmation se situant à l'intersection naissante entre le monde des CPU et des GPU, les premiers étant de plus en plus parallèles, les seconds étant de plus en plus programmables. Il s'agit donc d'une API permettant d'améliorer les performances algorithmiques en parallélisant les calculs complexes sur les périphériques divers présents de nos jours sur les ordinateurs (CPU, GPU...). Côté pilotes, le support de cette API sur Linux fut notamment détaillé il y a quelques jours dans un [autre article](http://linuxfr.org/news/les-pilotes-graphiques-libres-retrospective-et-vue-sur-l-avenir). Si vous êtes plutôt intéressé par le côté "utilisation" d'OpenCL, pour l'intégrer par exemple dans vos propres programmes, la société [StreamComputing](http://streamcomputing.eu/) lance l'initiative "_OpenCL training_" (en français: "formation OpenCL") proposant une formation gratuite (à distance, par Internet interposé), avec [GEGL](http://gegl.org) — le nouveau moteur de traitement d'image de [GIMP](http://gimp.org) — comme "support de cours". La ruse est donc de vous faire contribuer à GEGL tout en vous enseignant la technologie OpenCL. Moi je dis que c'est "double victoire", mais certains pourraient prétendre que les libristes sont fourbes! :P ---- [Standard OpenCL](https://www.khronos.org/opencl/) [L'annonce sur le site web de GIMP](http://www.gimp.org/news/2016/01/28/gegl-opencl-streamcomputing/) [Site web de GEGL](http://gegl.org) [Site de l'initiative "OpenCL training"](http://opencl.org/) [Les pilotes graphiques libres : rétrospective et vue sur l’avenir](http://linuxfr.org/news/les-pilotes-graphiques-libres-retrospective-et-vue-sur-l-avenir) [DLFP : GEGL 0.3.0 et babl 0.1.12 sont de sortie](https://linuxfr.org/news/gegl-0-3-0-et-babl-0-1-12-sont-de-sortie) ---- # Offre limitée # Le but de l'initiative est d'enseigner OpenCL et d'y intéresser les développeurs. L'initiative accepte pour le moment un maximum de 20 participants (7 sont déjà inscrits). # "gratuit" n'existe pas # Le marché est le suivant: l'assurance qu'à la fin de la formation, vous saurez programmer OpenCL en échange de votre contribution à des projets libres utilisant OpenCL. À ce jour, le "support de cours", c'est à dire le projet libre auquel vous contribuerez, est la plateforme de traitement d'image GEGL, utilisé notamment par GIMP, [G'Mic](http://linuxfr.org/news/g-mic-1-6-8-c-est-deja-noel-pour-les-traiteurs-d-images), GNOME photos (voir cette très [cool vidéo](https://youtu.be/31omSU-VcRc) pour avoir un aperçu du futur de GNOME photos propulsé par GEGL), MyPaint... Il est clairement indiqué sur la plateforme de développement (un projet sur [Github](https://github.com/OpenCL/GEGL-OpenCL)) que GIMP/GEGL est le premier projet de portage officiel. D'autres projets similaires pourront donc voir le jour à l'avenir, dans le but d'enseigner OpenCL aux développeurs. C'est donc un échange de service, plutôt que financier. # Organisation # Le projet est organisé par Vincent Hindriksen et Adel Johar qui souhaitent baser leur enseignement sur la _gamification_ du développement en évaluant les vitesses d'exécution des _kernels_ OpenCL (un _kernel_ est une fonction OpenCL qui sera exécutée sur un périphérique) pour comparer des implémentations, et ainsi faire ressortir des "vainqueurs". Ils souhaitent également travailler l'optimisation des kernels pour pousser aux limites d'OpenCL. On peut donc s'attendre à ce que les participants devraient bien connaître OpenCL à la suite de cette formation. Victor Oliveira, le développeur GEGL qui a écrit la majeure partie du code OpenCL dans GEGL, participe au projet en tant que "conseiller". # À propos de StreamComputing # [StreamComputing](http://streamcomputing.eu/) est une société néerlandaise de développement logiciel, apparemment spécialisé (en se référant au site web) à l'optimisation, aux algorithmes et à la connaissance matérielle. Ils fournissent du service, de la consultation logicielle et des formations dans les domaines de la programmation GPU et du traitement parallélisé. _Note: l'auteur de cette dépêche n'a aucune relation avec cette société et ne la connaissait même pas avant cette annonce. Je ne fais que relayer l'information._