Mythic accélère l’intelligence artificielle en mémoire f lash

Le 05/02/2021 à 15:00 par La rédaction

LA START-UP AMÉRICAINE ÉCHANTILLONNE SES PREMIERS ACCÉLÉRATEURS DE RÉSEAUX NEURONAUX, BASÉS SUR UNE TECHNOLOGIE DE TRAITEMENT EN MÉMOIRE PERMETTANT DE COMBINER UNE PUISSANCE DE 35 TOPS ET UNE CONSOMMATION DE 4 W SEULEMENT.

Les premiers accélérateurs IA de Mythic étaient attendus l'an passé, mais la start-up américaine a pris le temps de peaufiner les outils logiciels accompagnant ses circuits. Mythic a été fondé en 2012 à l'université du Michigan par Mike Henry (CEO) et Dave Fick (CTO) autour d'une technologie développée par Laura Fick, qui dirige désormais la R&D en signaux mixtes. Les circuits de Mythic reposent sur un ensemble de tuiles interconnectées par un réseau de routage. Chaque tuile dispose de cellules de traitement analogique stockant les poids ou coefficients du réseau neuronal, d'une mémoire Sram pour les données circulant entre les nœuds du réseau, d'une unité SIMD (instruction unique, données multiples) pour traiter les opérations non prises en charge par le réseau analogique et d'un cœur de processeur RISC-V contrôlant le séquencement de la tuile. Le traitement analogique repose sur des cellules de mémoire non volatile multiniveau – pour l'heure de la mémoire flash, mais Mythic n'exclut pas d'opter à l'avenir pour une mémoire RRam, PCM ou autre. La valeur contenue dans une cellule flash est ici considérée comme une résistance variable représentant le coefficient d'un neurone. Mythic applique une tension U en entrée de cette « résistance », tension générée par un convertisseur numérique-analogique, et lit le courant I sortant de la cellule mémoire via un convertisseur analogique-numérique : la multiplication équivaut à une simple loi d'Ohm I = G x U (G étant la conductance, c'est-à-dire l'inverse de la résistance). En reliant plusieurs colonnes de résistances, on réalise l'accumulation et donc une instruction MAC complète. L'un des avantages principaux de cette structure, dont on retrouve le principe général dans d'autres développements de « traitement en mémoire » (compute-in-memory), réside dans le fait que la mémoire n'a pas à être lue : on applique simplement un vecteur de données à l'entrée des convertisseurs N/A et on lit le vecteur résultant après multiplication par la matrice de cellules mémoires stockant les coefficients du réseau neuronal. Tout s'effectue sans avoir à accéder à une mémoire externe, et de manière parallèle. « La reconfiguration du réseau, c'est à dire de la mémoire flash, peut prendre du temps, jusqu'à une seconde ; mais dans la plupart des applications embarquées, cela n'intervient que rarement. Par exemple, une automobile va utiliser le même réseau neuronal de traitement d'images jusqu'à la prochaine mise à jour, qui peut inter-venir une fois par jour ou par semaine », explique Dave Fick, cofondateur et CTO de Mythic.

113 MILLIONS DE COEFFICIENTS

Laura Fick a développé la technologie mise en œuvre par Mythic, et en dirige désormais la R&D en signaux mixtes.

Référencé M1108, le premier circuit échantillonné par Mythic embarque 108  tuiles stockant jusqu'à 113 millions de coefficients pour une puissance totale de 35 Tops, avec une consommation typique de 4 W annoncée comme étant dix fois inférieure à celle d'un processeur graphique équivalent. Ce composant de 19 x 19 mm supporte les formats INT4, INT8 et INT16, et dispose d'une interface PCIe  2.1 à quatre lignes offrant 2 Go/s de bande passante pour le traitement d'inférence. Pour l'heure, il s'agit d'un accélérateur qui sera associé à un processeur hôte, mais Mythic n'écarte pas la possibilité d'ajouter à ses futurs circuits un cœur Arm susceptible de faire tourner l'application. Plusieurs accélérateurs peuvent en outre fonctionner en parallèle pour les applications les plus exigeantes, en communiquant ensemble par l'intermédiaire de leurs interfaces PCIe.

Mythic a particulièrement soigné l'outil permettant d'utiliser les environnements IA usuels. Les modèles conçus avec Caffe, PyTorch, TensorFlow ou encore ONNX sont optimisés, requantifiés du format FP32 en INT8, ré-entrainés et compilés jusqu'à générer le firmware, les coefficients du réseau neuronal et les drivers adaptés au circuit M1108. Mythic propose également des modèles préquali-fiés pour les usages les plus courants : détection et classification d'objets, estimation de la position de corps humain, segmentation d'images, etc. Comme toujours pour ce genre de circuits à architecture massivement parallèle, c'est surtout la qualité et la facilité d'utilisation des outils logiciels associés qui fera le succès ou l'échec des circuits de Mythic. Le fabricant propose également le M1108 sous forme de carte M.2 complète utilisable telle quelle, et dans le cadre d'une carte PCIe et d'un module d'évaluation.

Copy link
Powered by Social Snap