211service.com
Nouveau langage de programmation en parallèle
Un nouveau langage de programmation a été conçu pour tirer le meilleur parti des derniers processeurs informatiques multicœurs. S'il trouve la faveur des codeurs, il pourrait fournir un logiciel plus puissant pour de nombreux ordinateurs.
Au cours des dernières années, alors qu'ils se sont heurtés aux limites physiques de la miniaturisation, les fabricants de puces sont passés de l'augmentation de la puissance des cœurs de processeur (la partie d'une puce qui gère les données et les instructions) à l'ajout de plus de cœurs à une seule puce. . Par exemple, les processeurs Intel i3 et i7 ont respectivement deux et quatre cœurs.
Cela représente un défi pour les programmeurs. Étant donné que la plupart des langages de programmation ont été conçus pour des puces monocœur, il peut être difficile de diviser les tâches et de les envoyer à chaque cœur en parallèle. Si un codeur ne fait pas attention, cela peut provoquer des erreurs dans la manière dont chaque cœur de la puce accède aux sections partagées de la mémoire.
Tucker Taft , directeur de la technologie et président de la société de logiciels basée à Boston SofCheck , a conçu le nouveau langage—appelé Langage de spécification et d'implémentation parallèle (ParaSail)—spécifiquement pour l'écriture de logiciels pour les processeurs multicœurs. Le langage est destiné à éviter les pièges qui surviennent généralement lorsque l'on travaille avec des puces multicœurs.
Pour un programmeur, ParaSail ressemble à une forme modifiée de Java ou C#, deux langages de premier plan. La différence est qu'il divise automatiquement un programme en milliers de tâches plus petites qui peuvent ensuite être réparties sur plusieurs cœurs, une astuce appelée pico-threading, qui maximise le nombre de tâches exécutées en parallèle, quel que soit le nombre de cœurs. ParaSail effectue également le débogage automatiquement, ce qui rend le code plus sûr. Tout est fait en parallèle par défaut, sauf indication contraire, dit Taft.
Au cours de la prochaine décennie, le nombre de cœurs sur les puces informatiques devrait encore augmenter. Il existe maintenant des machines avec des dizaines ou des centaines de cœurs, explique Taft.
ParaSail utilise un certain nombre d'autres astuces, dont certaines s'appuient sur des langages développés à la fin des années 1980 et au début des années 1990 pour les superordinateurs, des machines exécutant de nombreuses puces informatiques individuelles en réseau. La conception de la langue elle-même est pour l'essentiel terminée, a déclaré Taft, qui a présenté les détails de la langue mercredi à la Convention Open Source O'Reilly . La première version du compilateur sera publiée dans le mois prochain. La langue fonctionnera sur les ordinateurs Windows, Mac et Linux.
Microsoft et Intel investissent 20 millions de dollars dans l'adaptation des langages existants aux processeurs multicœurs, il est donc difficile de dire si ParaSail sera largement adopté. Il y a beaucoup de gens qui résolvent le problème, prennent des langages existants et essaient de les rendre meilleurs pour gérer le traitement parallèle, dit Taft.
Taft a déjà fait ses preuves dans le monde du développement de langage informatique, déclare Denis Nicole du Dependable Systems and Software Engineering Group de l'Université de Southampton. Mais il ajoute qu'il faut généralement des entreprises de la taille de Sun pour proposer de nouvelles langues à la communauté.