← Neueste Arbeiten
🤖 machine learning

Optimizing CUDA like a Human: Micro-Profiling Tools as Expert Surrogates for LLM-Based GPU Kernel Optimization

KernelPro ist ein geschlossenes Multi-Agenten-System, das LLMs mit Experten-inspirierten Micro-Profiling-Tools und einer domänenspezifisch angepassten MCTS-Suche integriert, um automatisch hochperformante, energieeffiziente CUDA-Kernel zu generieren und iterativ zu optimieren, wobei es State-of-the-Art-Beschleunigungen in diversen Benchmarks erzielt.

Ursprüngliche Autoren: Jiading Gai, Shuai Zhang, Kaj Bostrom, Jin Huang, Vihang Patil, Haoyang Fang, Bernie Wang, Huzefa Rangwala, George Karypis

Veröffentlicht 2026-06-26
📖 5 Min. Lesezeit🧠 Tiefgang

Ursprüngliche Autoren: Jiading Gai, Shuai Zhang, Kaj Bostrom, Jin Huang, Vihang Patil, Haoyang Fang, Bernie Wang, Huzefa Rangwala, George Karypis

Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen

Stellen Sie sich vor, Sie haben einen sehr talentierten, aber unerfahrenen Lehrlingskoch (die KI), der das schnellste und effizienteste Gericht der Welt kochen möchte (ein Computerprogramm für eine Grafikkarte). Das Problem ist: Der Koch spricht nicht die Sprache der Küchengeräte. Wenn Sie ihm eine rohe Liste von Zahlen aus den Sensoren des Herdes übergeben – wie „Temperatur: 400, Druck: 20, Flamme: flackernd“ – wird der Koch verwirrt sein und das Gericht höchstens verschlechtern.

KernelPro ist ein neues System, das als Chef de Partie direkt neben dem Lehrling steht. Anstatt dem Lehrling Rohdaten von Sensoren zu übergeben, übersetzt der Chef de Partie diese Zahlen in klaren englischen Rat: „Hey, der Herd ist zu heiß, weil du zu viel Öl verwendest; wechsle zu einer kleineren Pfanne und rühre schneller.“

So funktioniert KernelPro, aufgeschlübelt in einfache Konzepte:

1. Der „Experten-Stellvertreter“ (Der Übersetzer)

In der Vergangenheit versuchten KI-Systeme zu erraten, was die Zahlen bedeuteten. KernelPro führt Micro-Profiling-Tools ein. Betrachten Sie diese als eine Reihe spezialisierter Sensoren, die jeweils von einem anderen Experten gesteuert werden.

  • Ein Experte prüft, ob der Koch die richtige Pfannengröße verwendet (Speicher).
  • Ein anderer prüft, ob der Koch das Gemüse zu langsam schneidet (Rechenleistung).
  • Ein dritter prüft, ob der Koch Zutaten auf den Boden fallen lässt (Register Spills).

Anstatt der KI eine Tabelle mit Zahlen zu geben, fungieren diese Tools als Stellvertreter für menschliche Experten. Sie analysieren die Daten, identifizieren das Problem und schreiben eine klare Notiz: „Deine Speichernutzung ist kritisch; wechsle zu einer schnelleren Speichermethode.“ Das Paper zeigt, dass die Gabe dieser klaren Notizen an die KI 125 % besser funktioniert als das bloße Hinfüttern von Rohzahlen. Tatsächlich waren die Rohzahlen so verwirrend, dass sie die Leistung der KI sogar schlechter machten, als wenn sie gar kein Feedback erhalten hätte!

2. Der „Schlaue Detektiv“ (Die Suchstrategie)

Die Optimierung von Code ist wie das Lösen eines Labyrinths. Ein einfacher Ansatz (genannt „Greedy Search“) besteht darin, einfach vorwärts zu gehen und nach links abzubiegen, wann immer man gegen eine Wand stößt. Man könnte in einer Sackgasse stecken bleiben.

KernelPro nutzt eine Monte Carlo Tree Search (MCTS). Stellen Sie sich einen Detektiv vor, der nicht nur einen Pfad beschreitet. Er:

  • Zeichnet eine Karte von jeder möglichen Abzweigung, die er könnte nehmen.
  • Schickt „Kundschafter“ aus, um gleichzeitig verschiedene Pfade auszuprobieren.
  • Wenn ein Pfad vielversprechend aussieht, schickt er mehr Kundschafter dorthin.
  • Wenn ein Pfad in einer Sackgasse endet, markiert er diesen auf der Karte und verschwendet dort keine Zeit mehr.

Dies ermöglicht es dem System, viele verschiedene Wege zur Code-Verbesserung zu erkunden, ohne bei einer „gut genug“ Lösung stecken zu bleiben. Das Paper zeigt, dass diese Methode signifikant schnellere Lösungen findet, als wenn man einfach blind vorwärts läuft.

3. Die „Gedächtnisbank“ (Aus Fehlern lernen)

Normalerweise vergisst eine KI, was sie beim letzten Versuch gemacht hat, wenn sie versucht, Code zu optimieren. Es ist wie ein Koch, der einen Topf anbrennen lässt, ihn reinigt und dann sofort wieder versucht, ihn anbrennen zu lassen, weil er die Lektion nicht gelernt hat.

KernelPro besitzt ein Suchgedächtnis (Search Memory). Es führt ein fortlaufendes Protokoll über jeden Fehler, jeden Erfolg und jeden „Aha-Moment“.

  • „Letztes Mal haben wir eine große Pfanne benutzt, aber sie war zu schwer.“
  • „Wir haben eine Abkürzung in der Bibliothek gefunden, die gut für diese Art von Gericht funktioniert.“

Dieses Protokoll wird der KI bei jedem Schritt zurückgespeist, sodass sie aus ihrer eigenen Geschichte lernt und nicht dieselben Fehler wiederholt.

4. Der „Quellcode-Jäger“ (Schreiben von Grund auf)

Die meisten KI-Systeme versuchen, vorgefertigte Teile zusammenzusetzen (wie die Verwendung einer Bibliothek vorgekochter Zutaten). KernelPro ist anders; es kann das Rezept von Grund auf neu schreiben.
Es besitzt ein Werkzeug, mit dem es durch die riesige Bibliothek bestehender Hochleistungscodes (CUTLASS/CuTe) suchen kann, um genau die Bausteine zu finden, die es benötigt. Es setzt diese dann zu einem brandneuen, maßgeschneiderten Gericht zusammen, das perfekt auf die spezifische Hardware abgestimmt ist – genau wie ein Meisterkoch es tun würde.

5. Der „Energiesparer“ (Bonus-Feature)

Normalerweise interessiert sich die Leute nur dafür, wie schnell das Essen zubereitet wird. KernelPro ist das erste System, das auch darauf achtet, wie viel Strom es verbraucht.
In einem Test fand das System einen Weg, exakt das gleiche Gericht in exakt der gleichen Geschwindigkeit zuzubereiten, aber durch die Wahl anderer „Zutaten“ (Anweisungen) verbrauchte es 11,6 % weniger Energie. Es ist, als fände man einen Weg, Wasser schneller zum Kochen zu bringen, ohne die Hitze zu erhöhen, sondern nur durch die Verwendung eines besseren Topfes.

Die Ergebnisse

Bei Tests auf einem Standardset schwieriger Coding-Herausforderungen (KernelBench):

  • Level 1 (Einfach): Es war 2,4-mal schneller als das bisher beste System.
  • Level 2 (Mittel): Es war 4,7-mal schneller.
  • Level 3 (Schwer): Es war 5,3-mal schneller.

In einem Realwelt-Test mit einer komplexen KI-Trainingsaufgabe (MoE) schlug es den von Menschen handoptimierten Code um das 1,23-fache und erstellte ein brandneues, Hochgeschwindigkeits-Programm von Grund auf, das so noch kein Mensch geschrieben hatte.

Kurz gesagt: KernelPro bittet eine KI nicht einfach nur zu „raten“, wie sie den Code verbessern kann. Es gibt ihr ein Team von Experten zur Übersetzung, um die Probleme zu erklären, einen klugen Detektiv, um Lösungen zu erforschen, ein Gedächtnis, um aus Fehlern zu lernen, und die Fähigkeit, individuellen Code von Grund auf neu zu schreiben. Dies verwandelt einen verwirrten Lehrling in einen Meisterkoch.

Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?

Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.

Digest testen →