Intervjuer
Ludovic Larzul, grundare och VD för Mipsology – Intervju-serie

Ludovic Larzul är grundare och VD för Mipsology, ett banbrytande startup-företag som fokuserar på state-of-the-art-acceleration för deep learning-inferens. De har utvecklat teknologi för att accelerera beräkningarna av inferens-neuronnät och dölja hårdvaruacceleratorn för AI-användare. Mipsologys Zebra är den första kommersiella acceleratorn som inkapslar sådan teknik för att tillhandahålla hög prestanda och enkelhet.
Vad var det som först fick dig intresserad av AI och mikrochip?
Jag arbetade med designen av en specifik typ av superdator i cirka 20 år med mitt företag EVE, innan det förvärvades av Synopsys 2012. Dessa datorer, som också kallas ASIC-emulatorer, används av många företag som designar ASIC:er runt om i världen. Jag tyckte om komplexiteten och mångfalden i det arbetet. För att lyckas måste man (a) förstå elektronik, programvara, komplexa algoritmer, hur människor designar chip och hur man ser till att de fungerar bra, chiparkitektur, effekt och mer djup teknologi, (b) korrekt förutsäga kundernas behov ett par år i förväg, (c) innovera kontinuerligt och (d) som startup, besegra konkurrenterna med betydligt färre resurser. Efter 20 år av framgång sökte jag efter en ny utmaning. Det var då AI började komma tillbaka i rampljuset. AlexNet hade gjort ett stort steg framåt i att förstå bilder (och när man ser tillbaka var det fortfarande i sin linda). Deep learning var helt nytt men lovande (Vem minns när det tog dagar att få ett resultat på ett enkelt nätverk?). Jag tyckte att det var ganska “roligt”, men insåg att det fanns många utmaningar.
Vad var inspirationen bakom att starta Mipsology?
Jag vet inte om jag skulle använda ordet “inspiration”. Det var initialt mer som: “Kan vi göra något som skulle vara annorlunda och bättre?” Det började med antaganden om vad AI-personer skulle vilja ha och göra, och de närmaste åren tillbringades med att hitta allt bättre lösningar baserat på det. Jag tror att mer än inspiration skulle jag säga att de människor jag arbetar med vill vara de bästa på det de skapar, i en positiv attityd av konkurrens. Det skapar ett starkt team som kan lösa problem som andra misslyckas med att lösa tillräckligt bra.
Mipsology använder FPGA-kort istället för GPU:er. Kan du beskriva vad FPGA är?
FPGA är elektroniska komponenter som kan programmeras på hårdvarunivå. Du kan föreställa dig det som en uppsättning Lego – ett par miljoner av dem. Varje liten block utför en enkel operation som att hålla ett värde eller något mer komplext som addition. Genom att gruppera alla dessa block är det möjligt att skapa ett specifikt beteende efter att chipet har tillverkats. Detta är motsatsen till GPU:er och nästan alla andra chip, som är utformade för en specifik funktion och inte kan ändras efteråt.
En del, som CPU:er och GPU:er, kan programmeras, men de är inte lika parallella som FPGA:er. Vid en given tidpunkt utför en FPGA ett par miljoner enkla operationer. Och det kan hända sex till sju hundra miljoner gånger per sekund. Eftersom de är programmerbara kan det de gör ändras när som helst för att anpassa sig till olika problem, så den extraordinära beräkningskraften kan vara effektiv. FPGA:er finns redan nästan överallt, inklusive basstationer för mobiltelefoner, nätverk, satelliter, bilar etc. Människor känner inte till dem så bra, eftersom de inte är lika synliga som en CPU som den i din laptop.
Vad gör dessa FPGA-kort till den överlägsna lösningen jämfört med de mer populära GPU:erna?
FPGA:er är överlägsna på många sätt. Låt oss fokusera på ett par viktiga aspekter.
GPU:er är utformade för att rendera bilder, främst för spel. De har visat sig matcha väl med vissa beräkningar i AI på grund av likheten i operationerna. Men de förblir primärt dedikerade till spel, vilket innebär att de kommer med begränsningar som inte passar bra med neuronnät.
Deras programmering är också begränsad till de instruktioner som bestämdes två eller tre år innan de är tillgängliga. Problemet är att neuronnät utvecklas snabbare än designen av ASIC:er, och GPU:er är ASIC:er. Så det är som att förutsäga framtiden: det är inte enkelt att vara rätt. Du kan se trender, men detaljerna är vad som verkligen påverkar resultaten, som prestanda. I kontrast, eftersom FPGA:er är programmerbara på hårdvarunivå, kan vi lättare hålla jämna steg med AI:s framsteg. Det ermögiliar oss att leverera en bättre produkt med högre prestanda och möta kundernas behov utan att behöva vänta på nästa kretsgenerering.
Dessutom är GPU:er utformade för att vara konsumentprodukter. Deras livslängd är avsiktligt kort, eftersom företagen som designar GPU:er vill sälja nya om ett par år till spelare. Det fungerar inte bra i elektroniska system som behöver vara tillförlitliga under många år. FPGA:er är utformade för att vara robusta och användas 24/7 under många år.
Andra välkända fördelar med FPGA:er inkluderar:
- Det finns många alternativ som kan passa inom specifika områden som nätverk eller videohantering
- De fungerar lika bra i datacenter som vid kanten eller i inbäddade system
- De kräver inte specifik kylning (mycket mindre vattenkylning som stora GPU:er)
En stor nackdel är att FPGA:er är svåra att programmera. Det kräver specifik kunskap. Även om företag som säljer FPGA:er har lagt ner stor ansträngning på att överbrygga komplexitetsgapet, är det fortfarande inte så enkelt som en CPU. I själva verket är GPU:er inte heller enkla. Men programvaran som döljer deras programmering för AI gör att den kunskapen inte är nödvändig. Det är det problem som Mipsology är först med att lösa: att ta bort behovet av att programmera eller ha någon kunskap om FPGA för AI-beräkningar.
Finns det några nuvarande begränsningar för FPGA-kort?
Vissa FPGA-kort är som vissa GPU-kort. De kan anslutas till en dators PCIe-uttag. En välkänd fördel, utöver livslängden jag nämnde tidigare, är att effektförbrukningen vanligtvis är lägre än för GPU:er. En annan, mindre känd fördel, är att det finns ett större urval av FPGA-kort än GPU-kort. Det finns fler FPGA:er för fler marknader, vilket leder till fler kort som passar inom olika områden av marknaderna. Detta betyder helt enkelt att det finns fler möjligheter för att beräkna neuronnät överallt till en lägre kostnad. GPU:er är mer begränsade; de passar i datacenter, men inte så mycket annat.
Mipsologys Zebra är den första kommersiella acceleratorn som inkapslar FPGA-kort för att tillhandahålla hög prestanda och enkelhet. Kan du beskriva vad Zebra är?
För de som är bekanta med AI och GPU:er är den enklaste beskrivningen att Zebra är till FPGA vad Cuda/CuDNN är till GPU. Det är en programvarustack som helt döljer FPGA:n bakom vanliga ramverk som PyTorch eller TensorFlow. Vi fokuserar främst på inferens för bilder och videor. Zebra börjar med ett neuronnät som vanligtvis tränats i flytande punkt, och utan någon manuell användarinsats eller proprietär verktyg, gör det att köra på valfritt FPGA-baserat kort. Det är så enkelt som: anslut FPGA-kortet, ladda drivrutinen, källa Zebra-miljön och starta samma inferensapplikation som den som körs på CPU:er eller GPU:er. Vi har vår egen kvantisering som behåller noggrannheten, och prestandan är färdig från början. Det finns inget proprietärt verktyg som användaren måste lära sig, och det tar inte timmar av ingenjörstid för att få hög genomströmning eller låg latens. Det betyder helt enkelt snabba övergångar, vilket också minskar kostnaderna och tiden till marknaden.
Vilka är de olika typerna av applikationer som Zebra är bäst utformad för?
Zebra är en mycket generisk accelerationsmotor, så den kan accelerera beräkningen för vilken applikation som helst som behöver beräkna neuronnät, med primärt fokus på bilder och video eftersom beräkningsbehoven är större för den här typen av data. Vi har förfrågningar från mycket olika marknader, men de är alla liknande när det gäller att beräkna neuronnät. De kräver vanligtvis klassificering, segmentering, superupplösning, kroppslägesbestämning etc.
Som Zebra körs på toppen av FPGA:er kan vilket kort som helst användas. Vissa har hög genomströmning och används vanligtvis i datacenter. Andra är mer lämpliga för användning vid kanten eller i inbäddade system. Vår vision är att, om en FPGA kan passa, användare kan använda Zebra för att accelerera sina neuronnätsberäkningar direkt. Och om GPU:er eller CPU:er används, kan Zebra ersätta dem och minska kostnaderna för AI-infrastrukturen. De flesta företag vi pratar med har liknande problem: de kunde distribuera fler AI-baserade applikationer, men kostnaden begränsar dem.
För ett företag som vill använda Zebra, vad är processen?
Bara låt oss veta på support@mipsology.com och vi kommer att komma igång.
Finns det något annat du vill dela om Mipsology?
Vi är mycket uppmuntrade av den feedback vi får från AI-samhället för vår Zebra-lösning. Specifikt berättas det för oss att detta förmodligen är den bästa acceleratorn på marknaden. Efter bara några månader fortsätter vi att lägga till en växande ekosystem av intresserade partner, inklusive Xilinx, Dell, Western Digital (WDC ), Avnet, TUL och Advantech, för att nämna några.
Jag njöt verkligen av att lära mig om denna banbrytande teknologi. Läsare som vill veta mer bör besöka Mipsology.












