← Nieuwste papers
🤖 machine learning

Tile-Level Activation Overlap for Efficient LLM Inference

Dit artikel introduceert twee gespecialiseerde CUTLASS-gebaseerde SM90-kernels die SwiGLU-activatie fuseren met matrixvermenigvuldiging op tile-niveau om de overhead van de materialisatie van intermediaire tensoren te elimineren, waarbij tot 2,47x versnelling en 79,5% piekbenutting op NVIDIA H100 GPU's worden bereikt terwijl zowel PyTorch als cuBLAS wordt overtroffen in efficiëntie en numerieke nauwkeurigheid.

Oorspronkelijke auteurs: Abhinav Jangda, Tyler Sorensen, Sebastian Burckhardt, Jianlan YE, Chaoyin Li, Atul Gupta

Gepubliceerd 2026-07-07
📖 5 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Abhinav Jangda, Tyler Sorensen, Sebastian Burckhardt, Jianlan YE, Chaoyin Li, Atul Gupta

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 hogesnelheidsfabriek runt die complexe robots bouwt (deze robots zijn Large Language Models, zoals de modellen die chatbots aansturen). Om elke robot te bouwen, heeft je fabriek een specifieke assemblagelijn die de MLP is (een kernonderdeel van het brein van de robot).

Lange tijd had deze assemblagelijn een grote inefficiëntie. Hier is het probleem en de oplossing uit dit paper, eenvoudig uitgelegd.

Het Probleem: De "Tussenpersoon"-bottleneck

In moderne robotfabrieken wordt een specifieke stap genaamd SwiGLU gebruikt om de robots slimmer te maken. Denk aan SwiGLU als een kwaliteitscontrole die twee aparte berekeningen vereist:

  1. Berekening A: Meet de huidige staat van de robot.
  2. Berekening B: Meet het potentieel van de robot.
  3. De Lijm: Combineer deze twee metingen om het eindresultaat te krijgen.

De Oude Manier (De Bottleneck):
In de standaard fabrieksopstelling (zoals die gebruikt door PyTorch), moeten de arbeiders na het uitvoeren van Berekening A de resultaten opschrijven op een gigantisch whiteboard in de gang (High-Bandwidth Memory). Daarna moeten ze naar dat whiteboard lopen, het lezen, Berekening B uitvoeren, de resultaten van die berekening op een tweede whiteboard schrijven, en vervolgens weer teruglopen om beide whiteboards te lezen om de "Lijm"-stap te doen.

Het paper ontdekte dat voor kleinere robots (kleinere AI-modellen), dit "naar het whiteboard lopen" 30% tot 37% van de totale tijd in beslag neemt. Het is alsof een chef de helft van zijn tijd doorbrengt met naar de voorraadkast lopen om een enkel kruidenpotje te pakken, in plaats van daadwerkelijk te koken.

De Oplossing: Twee Nieuwe "Superkeukens"

De auteurs hebben twee nieuwe, op maat gemaakte keukens (genaamd Kernels) gebouwd die de whiteboards volledig elimineren. In plaats van de resultaten op te schrijven en terug te lopen, houden de arbeiders de ingrediënten in hun handen (in de Registers) en voeren ze alles in één vloeiende beweging uit.

Ze creëerden twee verschillende strategieën voor verschillende fabrieksgroottes:

1. De "Ping-Pong" Keuken (Kernel-1)

  • Hoe het werkt: Stel je een estafette voor. Terwijl de ene arbeider de volgende lading ingrediënten ophaalt (data laden), is een andere arbeider al bezig met het mengen van de huidige lading.
  • De Truc: Ze gebruiken een "Ping-Pong"-schema. Terwijl de machine druk is met het ophalen van de tweede set ingrediënten, gebruiken de arbeiders precies die tijd om de "Lijm"-berekening uit te voeren op de eerste set.
  • Beste voor: Fabrieken die enorme robots maken (Grote Modellen) of veel robots tegelijkertijd laten draaien (Grote Batches). Het is als een enorme assemblagelijn waar genoeg arbeiders zijn om de grote machines volledig bezig te houden.

2. De "Interleaved" Keuken (Kernel-2)

  • Hoe het werkt: Stel je voor dat je dozen inpakt. In plaats van eerst alle rode items in te pakken en dan alle blauwe, pak je een rood item, dan een blauw item, dan weer een rode, en zo perfect afwisselend.
  • De Truc: Ze mengen de twee gewichtsmatrices (de "recepten" voor de berekeningen) samen voordat ze beginnen. Dit stelt de arbeiders in staat om een "rood" en een "blauw" ingrediënt tegelijkertijd te pakken en deze direct samen te verwerken.
  • Beste voor: Fabrieken die kleinere robots maken of minder robots tegelijkertijd laten draaien (Kleine Batches). Deze methode is zo efficiënt dat het de fabrieksvloer volledig bezet houdt met arbeiders, zodat niemand stilstaat te wachten.

De Resultaten: Snelheid en Nauwkeurigheid

De auteurs hebben deze nieuwe keukens getest op NVIDIA H100 chips (de krachtigste AI-processors die momenteel beschikbaar zijn) met diverse robotgroottes (van minuscule 0.5B modellen tot enorme 72B modellen).

  • Enorme Snelheidsverbeteringen: Voor de kleinere robots waren de nieuwe keukens 2,47 keer sneller dan de oude standaard. Dat is alsof je een taak van 10 minuten terugbrengt naar 4 minuten.
  • Verschuiving van de Bottleneck: Het oude systeem was "Memory-Bound" (het besteedde te veel tijd aan het lopen naar het whiteboard). Het nieuwe systeem is "Compute-Bound" (het besteedt al zijn tijd aan het daadwerkelijk doen van de wiskunde). Ze bereikten 79,5% van de maximale theoretische snelheid van de chip.
  • De Compiler Kan het Niet: De auteurs probeerden de standaard "auto-piloot" software (PyTorch's torch.compile) te gebruiken om dit automatisch op te lossen. Dat mislukte. De auto-piloot was 3 tot 7 keer langzamer dan hun aangepaste keukens. Dit bewijst dat voor dit specifieke probleem een menselijke expert nodig is om een handgemaakte oplossing te maken; de computer kan het nog niet zelf uitzoeken.
  • Betere Nauwkeurigheid: Verrassend genoeg waren de nieuwe aangepaste keukens ook nauwkeuriger dan de standaardmethode. De standaardmethode had kleine rekenfouten in 4,5% tot 11% van de resultaten, terwijl de nieuwe keukens nul fouten hadden.

Samenvatting

Het paper laat zien dat door de werking van de fabrieksvloer te reorganiseren — specifweg door de arbeiders te stoppen met het constant naar het whiteboard lopen om tussentijdse aantekeningen te lezen of te schrijven — ze AI-modellen aanzienlijk sneller kunnen laten draaien, vooral voor kleinere modellen die gebruikt worden op randapparaten (zoals telefoons of laptops). Ze bewezen dat standaard softwaretools deze efficiëntie niet kunnen evenaren; er is gespecialiseerde, handgeschreven code nodig om deze resultaten te behalen.

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.

Probeer Digest →