Calcul hautes performances : Cortus développe le cœur de processeur RISC-V du projet européen eProcessor

[EDITION ABONNES] Les promoteurs du jeu d’instructions open source RISC-V verraient bien leur protégé jouer un rôle important dans le domaine du calcul hautes performances (HPC). On sait déjà que sur ce terrain le projet européen EPI (European Processor Initiative), fort de 28 partenaires dont le français SiPearl, développe des cœurs d’accélération dénommés EPAC ...(European Processor Accelerators) reposant en partie sur le jeu d’instructions RISC-V (*).

Mais il faudra aussi compter sur les résultats du projet eProcessor, lancé le 1er avril 2021 pour une durée de trois ans, coordonné par le Barcelona Supercomputing Center et également soutenu par le programme européen EuroHPC. L’objectif ici est de combiner du logiciel et des ressources matérielles open source pour offrir un écosystème européen complet en source libre, reposant sur un nouveau processeur RISC-V couplé à de multiples accélérateurs. Marchés ciblés : le calcul hautes performances traditionnel, mais aussi les tâches à précision mixte pour l’analyse de données hautes performances (HPDA) reposant sur l’intelligence artificielle, l’apprentissage automatique, l’apprentissage profond ou la bio-informatique.

De manière générale, le futur eProcessor devrait être modulaire, extensible, éco-efficace et potentiellement utilisable dans les applications embarquées. Dans ce cadre, la société française Cortus, un spécialiste des cœurs de processeurs éco-efficaces qui propose aussi des services de conception de puces-systèmes (SoC) personnalisées, a été chargée de développer le cœur de processeur avec exécution des instructions dans le désordre (Out-of-Order) au centre du projet.

On se souviendra à cet égard que Cortus est l’un des douze membres Platinum de l’organisme RISC-V International et commercialise déjà un certain nombre de cœurs RISC-V.

Selon la société française, le processeur en cours de développement dans le projet eProcessor met en œuvre le jeu d’instructions RISC-V 64 bits ainsi qu’une cohérence de cache complète pour ouvrir la voie à des systèmes de grande envergure équipés d’un nombre très important de processeurs.

Dans l’architecture RISC-V, rappelle Cortus, le grand nombre de noms de registres visibles du compilateur, associé à une architecture de type load-store et à l'absence d'échanges de mémoire à mémoire, implique beaucoup moins d'opérations mémoire. Cette caractéristique, combinée au modèle mémoire de l’architecture RISC-V (RVWMO, RISC-V Weak Memory Ordering), permet des optimisations d'exécution dynamiques qui ne seraient pas possibles dans une architecture de type TSO (Total Store Ordering), telle que mise en œuvre dans les processeurs x86 par exemple. De cette manière, un processeur RISC-V peut surpasser des processeurs Intel/AMD en nombre d’instructions traitées par cycle (IPC), explique Cortus. En outre, des implémentations optimisées d'opérations mémoire atomiques, en conjonction avec la hiérarchie de cache, peuvent améliorer les performances d'applications multithreads, comme celles qui s'exécutent sur des machines HPC de grande envergure.

En collaborant avec un consortium européen dans le cadre du projet eProcessor (où Thales est également impliqué), Cortus compte bâtir une fondation solide de cœurs de processeur haut de gamme pour le calcul hautes performances, puis en décliner des versions optimisées pour les serveurs, le traitement de l’intelligence artificielle dans les systèmes évolués d’assistance à la conduite automobile (ADAS), les processeurs centraux embarqués dans les véhicules, voire les smartphones.

(*) Les partenaires du projet EPI ont notamment développé une première version d’une puce test qui combine plusieurs technologies d’accélération optimisées pour différents types d’applications. La puce test EPAC1.0 contient notamment quatre micromodules (micro-tiles) de traitement vectoriel, doté chacun d’un cœur RISC-V Avispado conçu par la société SemiDynamics et d’une unité de traitement vectoriel développée par la Barcelona Supercomputing Center et l’université de Zagreb.