Une équipe de chercheurs de l’Université de Californie a développé une méthode permettant de doubler la vitesse de calcul et de réduire de moitié la consommation énergétique des systèmes informatiques standard. Elle repose sur la répartition optimisée des tâches entre les différents processeurs, afin qu’elles soient traitées simultanément. En plus d’augmenter la vitesse de traitement, cette méthode réduit également la consommation d’énergie.
Si auparavant les ordinateurs n’intégraient qu’un seul processeur central (CPU) muni de plusieurs cœurs, de nos jours, ils incluent divers microprocesseurs visant à optimiser la performance globale. Parmi eux, on retrouve notamment les processeurs graphiques, ou GPU, dédiés au traitement graphique, ainsi que des accélérateurs de l’apprentissage automatique et de l’IA.
Lors de l’exécution d’un programme, ces composants opèrent de manière indépendante. Ils alternent le traitement des données en se les échangeant entre eux, un processus à la fois coûteux en temps et en énergie. Par ailleurs, le transfert d’informations crée souvent des goulots d’étranglement qui limitent l’efficacité globale du système.
Face à défi, une équipe de chercheurs de l’Université de Californie à Riverside a mis au point une nouvelle méthode de traitement. Cette dernière repose sur un framework baptisé « Simultaneous and heterogeneous multithreading » (SHMT), permettant de traiter les données parallèlement, évitant ainsi les goulots d’étranglement. Leur approche permet une exécution plus rapide des programmes et est plus économe en énergie. Les détails du système ont été présentés lors du symposium international sur les microarchitectures (Micro 2023) et sont disponibles dans la bibliothèque numérique ACM.
Un concept reposant sur le QAWS
Le concept SHMT est impliqué lors de l’exécution d’un programme, plus précisément durant l’ordonnancement — un processus dans lequel un système choisit l’ordre et l’emplacement des tâches en décidant quelles opérations doivent être exécutées sur chaque type de processeur. Le framework SHMT utilise une politique d’ordonnancement appelée « Quality-Aware Work-Stealing » (QAWS). Cette dernière optimise le système en le rendant « conscient » de la pertinence des tâches. Le QAWS repose également sur une stratégie de « vol de travail » pour équilibrer la charge de travail entre les différentes ressources matérielles. En d’autres termes, si un processeur se trouve sous-chargé par rapport aux autres, il peut « voler » des tâches à un composant plus chargé afin d’équilibrer l’utilisation des ressources.
Pour faciliter leur gestion, les tâches sont d’abord segmentées en des « high-level operations » (opérations de haut niveau), ou HLOP. Par suite, le système d’exécution peut allouer les HLOP aux files d’attente des différents composants matériels, comme le CPU, le GPU ou l’accélérateur d’algorithmes d’IA, pour qu’elles soient ainsi traitées parallèlement.
Une vitesse de traitement doublée et une consommation d’énergie réduite de moitié
Afin de tester leur approche, les chercheurs ont conçu un système informatique équipé de processeurs ordinaires que l’on retrouve dans les ordinateurs et les smartphones modernes. Ils y ont toutefois apporté quelques modifications afin de simuler les performances et charges de travail typiques d’un centre de données.
Les résultats des essais ont montré que l’utilisation de leur système SHMT a permis de presque doubler la vitesse de traitement des applications, par rapport à la méthode de traitement traditionnelle. De plus, l’approche a réduit de 51 % la consommation énergétique due à l’accomplissement des tâches.
La mise en œuvre du concept SHMT nécessite encore des travaux, mais à terme, il pourrait réduire significativement les coûts d’exploitation des systèmes informatiques. En effet, si les logiciels peuvent accomplir plus de tâches en moins de temps et avec moins de ressources, les fabricants pourraient concevoir des appareils moins chers qui resteraient tout de même performants.
Pour les usages à grande échelle, dont les centres de données, l’impact serait encore plus notable, avec une diminution drastique des dépenses énergétiques et des besoins en refroidissement. Cela contribuerait à réduire l’empreinte carbone et la consommation d’eau liées aux systèmes de refroidissement de ces infrastructures.