Intel veut simplifier les développements d’applications pour multi-coeur

Cloud

Le fabricant numéro un mondial des processeurs présente une gamme d’outils
dédiés pour les développeurs.

Intel devrait dévoiler de nouveaux outils de développement optimisés pour les processeurs multi coeurs. Ces processeurs, actuellement équipés de deux core et bientôt quatre, permettent de multiplier les performances de la puce sans augmenter ses besoins de consommation électrique, voire en les diminuant même. La stratégie « multicore » est en tout cas la réponse des fondeurs à la problématique de la consommation électrique sans diminuer les besoins de performance. Intel a notamment prévu de basculer l’ensemble de ses produits processeurs sous architecture multicore à tel point que le constructeur prévoit que les puces à double coeur occuperont 75 % de sa production avant la fin de l’année (voir édition du 14 octobre 2005).

Mais l’exploitation des capacités des puces multi-coeur est loin d’être optimisée par les applications. D’abord parce que l’arrivée relativement récente des processeurs double coeur n’a pas encore laissé le temps aux éditeurs d’adapter leurs produits mais, surtout, parce que le développement d’applications multicore s’avère fastidieux et compliqué pour les développeurs qui rechignent donc à s’adapter. La difficulté vient notamment dans le fait d’avoir à écrire les routines des applications, ou de threads (suite d’instructions), de manière à ce qu’elles puissent être lancées en parallèle (et, ainsi, exploitées par chacune des unités de calcul de la puce).

Si la programmation en parallèle n’a rien de nouveau ? elle est notamment exploitée dans le monde Unix sur processeurs à architecture RISC ?, son arrivée sur les applications de bureautique est nouvelle. D’où l’intérêt pour Intel de proposer des outils optimisés pour sa plate-forme Core 2 Duo et qui faciliterait le travail des développeurs.

Deux outils autour de Threading Building Blocks

Selon News.com, Intel doit dévoiler plusieurs outils dont Threading Building Blocks, une extension du langage C++ pour développer la programmation des threads en parallèle (ou multithreads). Présenté en version bêta depuis mars 2006, Intel Threading Building Blocks est « une solution simple et multi-plateforme destinée à adapter facilement les flux de processus [threading] aux performances extensibles du multi-coeur ». L’outil vise notamment d’éviter la re-écriture d’une application en conséquence.

Deux autres outils accompagneront Threading Building Blocks : Intel Thread Checker 3.0 et Intel Thread Profiler 3.0. Ils ajoutent au premier le support des instructions sur 64 bits (aujourd’hui supporté par la plupart des processeurs pour machines de bureau) et celui de la plate-forme Linux. Les outils d’Intel pourraient donc bien être une aubaine pour les éditeurs qui devraient ainsi accélérer l’optimisation de leurs produits pour les nouvelles architectures multi-coeur.