Entretiens
Ludovic Larzul, fondateur et PDG de Mipsology – Série d’entretiens

Ludovic Larzul est le fondateur et le PDG de Mipsology, une startup innovante qui se concentre sur l’accélération de pointe pour l’inférence de l’apprentissage profond. Ils ont conçu une technologie pour accélérer les calculs des réseaux neuronaux d’inférence et dissimuler l’accélérateur matériel aux utilisateurs de l’IA. Le Zebra de Mipsology est le premier accélérateur commercial qui encapsule une telle technologie pour offrir des performances élevées et une facilité d’utilisation.
Qu’est-ce qui vous a d’abord intéressé dans l’IA et les microprocesseurs ?
J’ai travaillé sur la conception d’un type spécifique de super-ordinateur pendant environ 20 ans avec mon entreprise précédente, EVE, avant qu’elle ne soit acquise par Synopsys en 2012. Ces ordinateurs, également appelés émulateurs d’ASIC, sont utilisés par de nombreuses entreprises qui conçoivent des ASIC dans le monde. J’ai vraiment apprécié la complexité et la diversité de ce travail. Pour réussir, il faut (a) comprendre l’électronique, les logiciels, les algorithmes complexes, la façon dont les gens conçoivent les puces et la façon de s’assurer qu’elles fonctionnent correctement, l’architecture des puces, l’alimentation, et bien d’autres technologies de pointe, (b) prédire correctement les besoins des clients quelques années à l’avance, (c) innover en permanence, et (d) en tant que startup, vaincre la concurrence avec beaucoup moins de ressources. Après 20 ans de succès, je cherchais un nouveau défi. C’était le moment où l’IA commençait à revenir sur le devant de la scène. AlexNet avait fait un bond en avant dans la compréhension des images (et en regardant en arrière, c’était encore dans son enfance). L’apprentissage profond était tout nouveau, mais prometteur (Qui se souvient de quand il fallait des jours pour obtenir un résultat sur un réseau simple ?). J’ai trouvé cela assez « amusant », mais j’ai reconnu qu’il y avait de nombreux défis.
Qu’est-ce qui vous a inspiré pour lancer Mipsology ?
Je ne sais pas si j’utilerais le mot « inspiration ». C’était initialement plus comme : « Pouvez-vous faire quelque chose qui serait différent et meilleur ? » Cela a commencé avec des hypothèses sur ce que les gens de l’IA aimeraient et feraient, et les quelques années suivantes ont été consacrées à trouver des solutions de mieux en mieux en fonction de cela. Je suppose que plus qu’une inspiration, je dirais que les personnes avec qui je travaille aiment être les meilleures dans ce qu’ils créent, dans une attitude de concurrence positive. Cela fait une équipe solide qui peut résoudre des problèmes que les autres ne parviennent pas à résoudre de manière adéquate.
Mipsology utilise des cartes FPGA au lieu de GPU. Pouvez-vous décrire ce que sont les FPGA ?
Les FPGA sont des composants électroniques qui peuvent être programmés au niveau matériel. Vous pouvez les imaginer comme un ensemble de Legos — quelques millions d’entre eux. Chaque petit bloc effectue une opération simple comme conserver une valeur, ou des opérations légèrement plus complexes comme l’addition. En regroupant tous ces blocs, il est possible de créer un comportement spécifique après la fabrication de la puce. C’est le contraire des GPU et presque toutes les autres puces, qui sont conçues pour une fonction spécifique et ne peuvent pas être modifiées par la suite.
Certains, comme les CPU et les GPU, peuvent être programmés, mais ils ne sont pas aussi parallèles que les FPGA. À tout moment donné, un FPGA effectue quelques millions d’opérations simplistes. Et cela peut se produire six à sept cents millions de fois par seconde. Puisqu’ils sont programmables, ce qu’ils font peut être modifié à tout moment pour s’adapter à différents problèmes, ce qui signifie que la puissance de calcul extraordinaire peut être efficace. Les FPGA sont déjà presque partout, y compris les stations de base des téléphones mobiles, les réseaux, les satellites, les voitures, etc. Les gens ne les connaissent pas bien, cependant, parce qu’ils ne sont pas aussi visibles qu’un CPU comme celui de votre ordinateur portable.
Qu’est-ce qui rend ces cartes FPGA la solution supérieure aux GPU plus populaires ?
Les FPGA sont supérieurs à de nombreux égards. Concentrons-nous sur quelques-uns des plus importants.
Les GPU sont conçus pour le rendu d’images, principalement pour les jeux. Ils ont été trouvés pour correspondre bien avec certains calculs en IA en raison de la similarité des opérations. Mais ils restent principalement dédiés aux jeux, ce qui signifie qu’ils viennent avec des contraintes qui ne conviennent pas bien aux réseaux neuronaux.
Leur programmation est également limitée aux instructions qui ont été décidées deux ou trois ans avant qu’ils ne soient disponibles. Le problème est que les réseaux neuronaux progressent plus rapidement que la conception des ASIC, et les GPU sont des ASIC. Donc, c’est comme essayer de prédire l’avenir : ce n’est pas simple d’avoir raison. Vous pouvez voir les tendances, mais les détails sont ce qui a vraiment un impact sur les résultats, comme les performances. En revanche, puisque les FPGA sont programmables au niveau matériel, nous pouvons plus facilement suivre les progrès de l’IA. Cela nous permet de livrer un meilleur produit avec de meilleures performances, et de répondre aux besoins des clients sans avoir à attendre la prochaine génération de silicium.
En outre, les GPU sont conçus pour être des produits grand public. Leur durée de vie est intentionnellement courte, car les entreprises qui conçoivent les GPU veulent vendre de nouveaux GPU quelques années plus tard aux joueurs. Cela ne fonctionne pas bien dans les systèmes électroniques qui doivent être fiables pendant de nombreuses années. Les FPGA sont conçus pour être robustes et utilisés 24/7 pendant de nombreuses années.
D’autres avantages bien connus des FPGA incluent :
- Il existe de nombreuses options qui peuvent correspondre à des domaines spécifiques comme le traitement de réseau ou de vidéo
- Ils fonctionnent aussi bien dans les centres de données que sur le Edge ou dans les systèmes intégrés
- Ils n’ont pas besoin d’un refroidissement spécifique (beaucoup moins de refroidissement à l’eau comme les grands GPU)
Un inconvénient majeur est que les FPGA sont difficiles à programmer. Cela nécessite des connaissances spécifiques. Même si les entreprises qui vendent des FPGA ont fait de grands efforts pour combler l’écart de complexité, ce n’est toujours pas aussi simple qu’un CPU. En vérité, les GPU ne sont pas non plus simples. Mais le logiciel qui cache leur programmation pour l’IA rend cette connaissance inutile. C’est le problème que Mipsology est la première à résoudre : supprimer la nécessité de programmer ou d’avoir des connaissances en FPGA pour le calcul de l’IA.
Existe-t-il des limitations actuelles aux cartes FPGA ?
Certaines cartes FPGA sont comme certaines cartes GPU. Elles peuvent être connectées à des emplacements PCIe d’un ordinateur. Un avantage bien connu, en plus de la durée de vie que j’ai mentionnée précédemment, est que la consommation d’énergie est généralement inférieure à celle des GPU. Un autre avantage moins connu est qu’il existe une plus grande sélection de cartes FPGA que de cartes GPU. Il existe plus de FPGA pour plus de marchés, ce qui signifie qu’il existe plus de possibilités pour calculer les réseaux neuronaux partout à moindre coût. Les GPU sont plus limités ; ils conviennent aux centres de données, mais pas à grand-chose d’autre.
Le Zebra de Mipsology est le premier accélérateur commercial qui encapsule des cartes FPGA pour offrir des performances élevées et une facilité d’utilisation. Pouvez-vous décrire ce qu’est Zebra ?
Pour ceux qui sont familiers avec l’IA et les GPU, la description la plus simple est que Zebra est à FPGA ce que Cuda/CuDNN est à GPU. Il s’agit d’une pile logicielle qui cache complètement l’FPGA derrière des frameworks habituels comme PyTorch ou TensorFlow. Nous visons principalement l’inférence pour les images et les vidéos. Zebra commence avec un réseau neuronal qui a été formé typiquement en virgule flottante, et sans aucun effort manuel de l’utilisateur ou outil propriétaire, le fait fonctionner sur n’importe quelle carte basée sur FPGA. C’est aussi simple que : connecter la carte FPGA, charger le pilote, source l’environnement Zebra, et lancer la même application d’inférence que celle qui s’exécute sur les CPU ou les GPU. Nous avons notre propre quantification qui conserve la précision, et les performances sont prêtes à l’emploi. Il n’y a pas d’outil propriétaire que l’utilisateur doit apprendre, et cela ne prend pas des heures de temps d’ingénierie pour obtenir un débit élevé ou une latence faible. Cela signifie simplement des transitions rapides, ce qui réduit également le coût et le temps de mise sur le marché.
Quels sont les différents types d’applications pour lesquelles Zebra est le mieux conçu ?
Zebra est un moteur d’accélération générique, il peut donc accélérer le calcul pour n’importe quelle application qui a besoin de calculer des réseaux neuronaux, avec un focus principal sur les images et les vidéos parce que les besoins de calcul sont plus importants pour ce type de données. Nous avons des demandes de très différents marchés, mais ils sont tous similaires lorsqu’il s’agit de calculer les réseaux neuronaux. Ils ont tous typiquement besoin de classification, de segmentation, de super-résolution, de positionnement du corps, etc.
Étant donné que Zebra s’exécute sur des FPGA, n’importe quelle carte peut être utilisée. Certaines ont un débit élevé et sont généralement utilisées dans les centres de données. D’autres sont plus appropriées pour une utilisation sur le Edge ou dans les systèmes intégrés. Notre vision est que, si un FPGA peut être connecté, les utilisateurs peuvent utiliser Zebra pour accélérer leurs calculs de réseaux neuronaux dès que possible. Et si les GPU ou les CPU sont utilisés, Zebra peut les remplacer et réduire les coûts de l’infrastructure de l’IA. La plupart des entreprises avec lesquelles nous parlons ont des problèmes similaires : elles pourraient déployer plus d’applications basées sur l’IA, mais le coût les limite.
Pour une entreprise qui souhaite utiliser Zebra, quel est le processus ?
Il suffit de nous contacter à support@mipsology.com et nous vous mettrons en route.
Y a-t-il autre chose que vous aimeriez partager sur Mipsology ?
Nous sommes très encouragés par les commentaires que nous recevons de la communauté de l’IA pour notre solution Zebra. Plus précisément, on nous dit que c’est probablement l’accélérateur le meilleur sur le marché. Après seulement quelques mois, nous continuons d’ajouter à un écosystème croissant de partenaires intéressés, notamment Xilinx, Dell, Western Digital (WDC ), Avnet, TUL et Advantech, pour n’en citer que quelques-uns.
J’ai vraiment apprécié d’en apprendre davantage sur cette technologie innovante. Les lecteurs qui souhaitent en savoir plus devraient visiter Mipsology.












