Pourquoi les développeurs boudent le multi-coeur 

Le 29 janvier 2009 (16:48) - par Cyrille Chausson

Imprimer Envoyer par e-mail télécharger le pdf

Rubriques : Processeurs et composants - Editeurs - Technologie - Outils de développement - langages - HPC Tags : processeur - developpement - parallelisme

Alors que le multi-coeur se généralise tant sur les stations de travail, les serveurs que sur les consoles de jeux, les développeurs et les éditeurs tardent à adapter leurs applications aux spécificités du parallélisme. Freinant d'emblée le gain de performances promis par les constructeurs de processeurs. Un écart qui symbolise le manque de formation des développeurs et l'immaturité du marché des outils de développement.

Multi-coeur cherche application à sa taille. Le mariage entre hardware et logiciel n'a pas encore eu lieu sur l'autel du parallélisme. Dans un contexte propice à la multiplication des coeurs embarqués dans une unique puce, les éditeurs de logiciels tardent à exploiter dans leurs applications toute la puissance promises par le multi-theading. Créant ainsi un écart entre d'un côté le matériel et de l'autre les logiciels, qui ne dialoguent alors plus que partiellement. Ou plus exactement de façon imparfaite.

La première salve est venue des chiffres. Evans Data, cabinet d'analyse, rapporte, dans une étude sur les habitudes des développeurs mondiaux, que sur les six derniers mois de 2008, seulement 3 % des développeurs auraient introduit dans leur code des instructions capables de gérer le parallélisme des multi-coeurs. Une trop faible progression, conclut alors le cabinet, alors que, côté micro-processeurs, les coeurs s'empilent. Par contre, Evans Data constate que quelque 70% des répondants envisagent d'exploiter la technologie « dans un futur proche ». Bref, ils attendent patiemment. Oui, mais quoi ?


Pour Stéphane Bihan, responsable du développement de CAPS Entreprise, éditeur qui développe HMPP (Hybrid Multicore Parallel Programming), un ensemble d'outils de développement pour la programmation multi-coeur , cet attentisme résulte d'une compilation de facteurs. Si les bénéfices du multi-coeur ont déjà été largement digérés par le HPC (High-Performance Computing) – et ainsi par le monde scientifique - , il apparaît  toutefois que « les développeurs sont peu entrainés au développement parallèle ». Que ce soit chez les éditeurs classiques, ou dans le domaine du HPC - pourtant coeur de cible -, comme le souligne une étude du programme européen Prace (Partnership for Advanced Computing in Europe).
Ce rapport pointe du doigt le manque flagrant de compétences et la nécessité immédiate de matériel et de supports de formation adéquats aux technologies régissant le parallélisme. En clair, un manque d'expertise certain dans le domaine. Ainsi, seulement un développeur interrogé sur cinq aurait reçu une formation aux techniques de programmation multi-coeur. La majorité du panel estimant que leurs compétences en la matière sont d'un niveau basique, voire inexistantes.
Stéphane Bihan explique que le développement parallèle implique « de maîtriser de nouveaux principes , comme la scalibility, le load-balancing, le calcul, la communication entre applications et la décomposition des données ». Autant de concepts dont l'apprentissage ne s'improvise pas.

Sans surprise, il constate aussi un manque de maturité des environnements de développement ainsi que des langages qui, eux aussi, tardent à suivre. L'API OpenMP et la norme MPI (Message Passing Interface), deux références en matière de calcul parallèle, ne voient pas leur base de développeurs s'étoffer (C et Fortran principalement). Et pour cause, l'absence de rapprochement des deux composants est présentée comme un véritable frein à l'usage du parallélisme par le programme Prace. OpenMP est une interface de programmation pour le calcul parallèle sur architecture à mémoire partagée, tandis que MPI définit un standard de communication pour le multiprocesseur.

Dans l'attente d'un lièvre

Alors on attend. Les éditeurs aussi, qui patientent en espérant qu'un des leurs se lance et ouvre la voie. « Ils sont effrayés également par la somme de travaux de recherche autour du développement parallèle, démontrant alors que le marché n'est, certes, pas encore bien défini, ou pas mûr », poursuit Stéphane Bihan. C'est notamment le cas avec le projet OpenCL (Open Computing Language) ouvert par Apple, qui doit faire émerger un standard de programmation parallèle dans les GPU (puces graphiques), et donner la réplique à Cuda, exclusivement réservé aux technologies Nvidia.

Reste que la tendance se dirige vers le « Many-core », explique Stéphane Bihan, qui, en juxtaposant un processeur générique à un processeur spécialisé comme un GPU, constitue, outre une évolution inévitable, « la seule solution d'augmenter la performance par Watt ».
Adobe s'y est risqué, souligne Stéphane Bihan, et « a porté Photoshop de façon à ce que le calcul s'exécute sur le processeur graphique ». On se dirige ainsi vers une période de sensibilisation du marché à cette tendance, avant une adoption généralisée, d'ici un ou deux ans, prévoit-il. Et ainsi vers une longue période de formation des développeurs.

En savoir plus:
 Télécharger le rapport de Prace


Téléchargez cet article au format PDF
livres blancs avec LesSourcesIT.fr

Guide en 10 étapes pour l’achat d’une solution CRM adaptée

Le processus d'acquisition d'une solution CRM est différent de la procédure classique suivie pour les achats informati…


Démystifier les mythes sur le 10Gigabit Ethernet

Alors que le 10Gigabit Ethernet (GbE) est largement disponible depuis plusieurs, la technologie et encore nouvelle pour …

vues 2543 lectures commentaire 0 commentaire(s) recommandation notez cet article
2

Réagissez à cet article

Votre Pseudo

Commentaire

publicité
publicité
Les dossiers du MagIT

Justifier la sécurité informatique - Gérer les risques et garantir la sécurité de votre réseau


L'objectif d'un programme de sécurité est de choisir et de déployer des contre-mesures performantes pour atténuer les vulnérabilités qui risquent très probablement de causer…

Security Connected : Optimisez votre entreprise - Les dix grands thèmes de la sécurité que doit maîtriser tout dirigeant d'entreprise


Les entreprises sont en perpétuelle évolution. Selon une étude récente de Gartner, le rôle des directeurs informatiques évolue lui aussi : jusque-là gestionnaires des ressou…
livres blancs avec LesSourcesIT.fr
Recevez les newsletters du MagIT
L'essentiel IT : L'actu IT au quotidien
événements

Etat du monde IT 2011

1 2 3 4 5   
Click Here