Efficient Mixture-of-Experts LLM Inference with Apple Silicon NPUs
Dit paper introduceert NPUMoE, een runtime-inferentie-engine die Mixture-of-Experts LLM's op Apple Silicon-apparaten versnelt door dynamische routingproblemen op te lossen en dense berekeningen naar de Neural Engine (NPU) uit te laggen, wat resulteert in aanzienlijke verbeteringen in latentie, energie-efficiëntie en CPU-gebruik.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je voor dat je een enorm, slim team hebt (een LLM of taalmodel) dat een boek voor je moet samenvatten of een vraag moet beantwoorden. Dit team bestaat uit duizenden experts. In een traditioneel team werken iedereen mee aan elke vraag. Dat is traag en kost veel energie.
In een MoE-model (Mixture of Experts) is het slimmer: voor elke zin of vraag wordt er alleen een klein groepje experts ingeschakeld. De rest slaapt. Dit is heel efficiënt, maar het zorgt voor een groot probleem als je dit op je telefoon of laptop wilt draaien.
Het Probleem: De Onvoorspelbare Chef
Stel je een fabriek voor met een NPU (de Apple Neural Engine). Dit is een super-snelle, gespecialiseerde machine die geweldig is in het uitvoeren van vaste, repetitieve taken (zoals het verwerken van grote blokken data). Maar deze machine houdt niet van chaos.
Het probleem met MoE-modellen is dat de "chef" (de router) op het laatste moment beslist welke experts aan de slag gaan.
- Onvoorspelbaar: Soms krijgt Expert A 100 taken, en Expert B slechts 1. Soms is het andersom.
- Te veel kleine taken: De machine moet constant stoppen, nieuwe instructies ophalen en weer starten voor elk klein groepje experts. Dit kost meer tijd dan het werk zelf (de "startkosten").
- Onhandige vormen: De NPU houdt van rechthoekige, vaste blokken data. MoE levert echter onregelmatige, veranderlijke vormen aan.
Als je dit op je Apple-chip probeert te draaien, wordt je telefoon traag, de batterij loopt snel leeg, en de NPU doet eigenlijk niets omdat hij te veel tijd kwijt is aan het "starten en stoppen" van taken.
De Oplossing: NPUMoE (De Slimme Regisseur)
De auteurs van dit papier hebben NPUMoE bedacht. Dit is een slimme regisseur die de chaos van de MoE-modellen omtovert tot een strakke, efficiente productielijn voor de Apple-chip. Ze gebruiken drie creatieve trucs:
1. De "Vaste Vakken" (Static Tiers)
In plaats van dat experts een willekeurig aantal taken krijgen, deelt de regisseur ze in in vaste categorieën.
- De Analogie: Stel je een postkantoor voor. Normaal gesproken krijgt elke brievenbus een willekeurig aantal brieven. Soms zit er één, soms een berg. De postbode (de NPU) moet dan steeds de bus aanpassen.
- De Truc: NPUMoE zegt: "Expert A krijgt altijd een bus met 64 vakjes, Expert B krijgt er 32." Als er meer brieven zijn dan vakjes, gooien we de minst belangrijke brieven weg (een slimme truc om de kwaliteit hoog te houden). Als er minder zijn, vullen we de rest met "lege" brieven (padding).
- Resultaat: De NPU ziet nu altijd dezelfde, vaste vormen. Geen verrassingen, dus hij kan razendsnel werken.
2. De "Groepsbus" (Grouped Expert Execution)
Eerder startte de NPU een nieuwe "motor" voor elke expert. Dat is als een bus die elke 100 meter stopt om één persoon op te halen. Dat kost enorm veel brandstof en tijd.
- De Analogie: NPUMoE bundelt experts samen. In plaats van 8 aparte bussen, pakt hij één grote bus met 8 experts aan boord.
- De Truc: De NPU start de motor maar één keer en laat die bus dan alle experts in één keer afhandelen.
- Resultaat: De "startkosten" worden gedeeld over veel werk. De machine draait veel efficiënter.
3. De "Slimme Verdeling" (Load-Aware Residency)
Niet alle experts zijn even populair. Sommigen worden constant gebeld, anderen bijna nooit.
- De Analogie: Stel je een restaurant voor. De ster-chef (de populaire expert) moet direct aan het werk in de keuken (de NPU). De chef die maar één keer per dag een taak krijgt, hoeft niet in de dure keuken te staan; hij kan gewoon in de garage (de CPU) wachten tot hij nodig is.
- De Truc: NPUMoE meet van tevoren welke experts populair zijn. De populaire experts blijven permanent op de snelle NPU. De onpopulaire experts worden verplaatst naar de CPU, omdat het te veel moeite kost om ze naar de NPU te sturen voor zo'n klein beetje werk.
- Resultaat: De dure, snelle NPU wordt niet versleten met kleine klusjes.
Het Eindresultaat: Snel, Koud en Slim
Door deze drie trucs te combineren, heeft NPUMoE wonderen gedaan op Apple-apparaten (zoals de M2-chip):
- Snelheid: Het is 1,3 tot 5,5 keer sneller dan eerdere methoden.
- Batterij: Het verbruikt 1,8 tot 7,4 keer minder energie. Je telefoon wordt niet heet en gaat langer mee.
- Vrije Kracht: De CPU (de hoofdprocessor van je telefoon) hoeft veel minder te werken, waardoor je telefoon nog steeds soepel blijft voor andere apps (zoals je muziek of je camera).
Kortom: NPUMoE is de slimme regisseur die de chaotische, onvoorspelbare wereld van moderne AI-modellen omtovert tot een strakke, georganiseerde productielijn die perfect past bij de kracht van de Apple-chip. Het maakt het mogelijk om enorme, slimme modellen lokaal op je apparaat te draaien zonder dat je batterij direct leeg is of je telefoon vastloopt.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.