Financement
Ludovic Larzul, Fondateur et PDG de Mipsology – Série d’entretiens

Ludovic Larzul est le fondateur et le PDG de Mipsology, une startup innovante axée sur l’accélération de pointe pour l’inférence d’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 ASIC, sont utilisés par de nombreuses entreprises conçuant 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 comment s’assurer qu’elles fonctionnent correctement, l’architecture des puces, l’alimentation, et plus de technologie de pointe, (b) prédire correctement les besoins des clients quelques années à l’avance, (c) innover en continu, 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 quando il fallait des jours pour obtenir un résultat sur un réseau simple ?). Je l’ai trouvé plutôt « amusant », mais j’ai reconnu qu’il y avait de nombreux défis.
Qu’est-ce qui a inspiré le lancement de 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 faire, et les quelques années suivantes ont été consacrées à trouver des solutions de plus en plus meilleures basées sur cela. Je suppose que plus que l’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 crée 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 Lego — 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, donc 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 dans l’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, parce que 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 des performances plus élevées, et de répondre aux besoins des clients sans avoir à attendre la prochaine génération de silicium.
De plus, 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 des 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 heures sur 24, 7 jours sur 7, pendant de nombreuses années.
D’autres avantages bien connus des FPGA incluent :
- Il y a 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 bord ou dans les systèmes intégrés
- Ils n’ont pas besoin d’un refroidissement spécifique (beaucoup moins de refroidissement par 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 le fossé de complexité, cela n’est 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 ces connaissances inutiles. C’est le problème que Mipsology est le premier à 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 branchées dans les emplacements PCIe d’un ordinateur. Un avantage bien connu, outre 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 y a une plus grande sélection de cartes FPGA que de cartes GPU. Il y a plus de FPGA pour plus de marchés, ce qui conduit à plus de cartes qui conviennent à différents domaines des marchés. Cela signifie simplement qu’il y a plus de possibilités pour calculer des 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 le 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 : brancher la carte FPGA, charger le pilote, sourcez 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 nécessite de calculer des réseaux neuronaux, avec un focus principal sur les images et la vidéo 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 des réseaux neuronaux. Ils ont tous typiquement besoin de classification, de segmentation, de super-résolution, de positionnement du corps, etc.
Comme 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 bord ou dans les systèmes intégrés. Notre vision est que, si un FPGA peut être intégré, les utilisateurs peuvent utiliser Zebra pour accélérer leurs calculs de réseaux neuronaux immédiatement. Et si des GPU ou des CPU sont utilisés, Zebra peut les remplacer et réduire les coûts de l’infrastructure IA. La plupart des entreprises avec lesquelles nous discutons 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 le faire savoir à [email protected] 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 retours que nous obtenons de la communauté de l’IA pour notre solution Zebra. Plus précisément, on nous dit que c’est probablement le meilleur accélérateur 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, 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.












