Logo du site
Paul-Antoine Bisgambiglia | Università di Corsica
Attualità
Paul-Antoine Bisgambiglia  |
Attualità

Le consortium HSA veut améliorer l'utilisation des systèmes multicoeurs

Menée par le fabricant de processeurs AMD, la Fondation HSA présente une spécification ouverte destinée à étendre la mémoire adressable aux différentes unités de traitement.

Le 30 Avril 2013  Article de Agam Shah d'IDG News Service (adaptation M.G.) le monde informatique url

Programmer pour des systèmes multicoeurs s'avère complexe. Pour réduire les difficultés posées, un consortium industriel conduit par AMD cherche à franchir une étape sur la portabilité des applications entre les différents terminaux, architectures et systèmes d'exploitation. LaFondation HSA , pour Heterogeneous System Architecture, doit présenter aujourd'hui une architecture de mémoire uniforme appelée HUMA qui rend différents types de mémoire accessibles à tous les processeurs au sein d'un système. En supprimant les barrières qui séparent ces différents types, les développeurs accèdent à des ressources partagées de mémoire plus importantes dans lesquelles le code peut s'exécuter.

La spécification présentée fait partie du standard matériel ouvert de HSA. L'objectif est de pouvoir distribuer l'exécution d'un programme entre les ressources de traitement dans les serveurs, PC et terminaux mobiles. HSA veut créer une interface basique autour d'outils  standards de programmation parallèle de façon à ce que le code puisse être écrit et compilé une seule fois pour de nombreux terminaux.
Les processeurs Kaveri partagent la mémoire entre CPU et GPU

Actuellement, les ordinateurs et les terminaux mobiles associent à leurs processeurs de nombreux co-processeurs pour accélérer les traitements informatiques : puces graphiques, DSP (digital signal processors) et FPGA (Field Programmable Gate Arrays) pour le traitement  du signal, processeurs réseaux et circuits intégrés spécialisés (Asics). Les processeurs les plus rapides maîtrisent la puissance de traitement des GPU et des CPU pour des calculs mathématiques complexes dans les HPC, tandis que les terminaux mobiles se servent de plusieurs processeurs pour l'affichage graphique et la sécurité.

AMD doit livrer cette année les processeurs Kaveri, pour portables et desktops, intégrant des CPU et des puces graphiques capables de partager de la mémoire. Les objectifs poursuivis par la Fondation HSA ne sont pas uniquement liés à la stratégie processeurs d'AMD, le fabricant intégrant la propriété intellectuelle d'autres sociétés afin que les puces puissent être personnalisées en fonction des besoins des clients. Par exemple, AMD fabrique des puces customisées pour la prochaine console de jeu PlayStation 4  de Sony.
Allocation de mémoire dynamique

HSA veut aussi réduire les coûts de développement et le besoin de recompiler le code pour d'autres terminaux ou architectures de processeur. Parmi les caractéristiques d'HUMA, on trouve l'allocation de mémoire dynamique et l'accès rapide du GPU à la mémoire. « Toutes les unités de traitement auront les mêmes priorités et pourront utiliser la même mémoire », résume Jim McGregor, analyste du cabinet Tirias Research.

HUMA s'assure que chaque composante matérielle accède aux mêmes données, afin qu'il ne soit pas nécessaire de copier l'information dans différents types de mémoire. Pour l'instant, les GPU et les CPU accèdent à différents caches et types de mémoires et la spécification va casser ce moule classique dans lequel le processeur alloue de la mémoire pour l'exécution du code, mais où l'information est copiée dans la mémoire du GPU pour pouvoir être exécutée par le processeur graphique. « L'autre volet, c'est l'unification de l'architecture matérielle et logicielle. Si vous écrivez en C++, vous pouvez demander que le GPU l'exécute », poursuite Jim McGregor. La spécification diminue aussi le  besoin de transférer les données entre les mémoires ce qui simplifie les problèmes de goulets d'étranglement, ajoute l'analyste.
PAUL-ANTOINE BISGAMBIGLIA | Mise à jour le 02/05/2013