Communitygithub.com

ZJtoast/kernel-profiler-skill

Kernel-Profiler-Workflow für CUDA- und Triton-Kernel mit Nsight Compute, standardisierten Berichten, visueller Analyse und vendor-portablen Adaptern.

Was ist kernel-profiler-skill?

Diese Skill ermöglicht eine präzise Profilerstellung von CUDA- und Triton-Kernels mittels Nsight Compute (ncu) und liefert standardisierte Berichte sowie visuelle Analyseergebnisse. Es ist speziell auf Kernel-Ebene fokussiert und integriert sich nahtlos in Entwicklungsumgebungen wie Claude Code oder Cursor. Der Workflow erfasst Metriken wie Speichernutzung, Rechenleistung und Latenz und bietet Adapter, um die Ergebnisse zu verschiedenen Analyseformaten (z. B. Flamegraph, Tabellen) zu konvertieren. Das Tool unterstützt eine effiziente Optimierung von Beschleuniger-Kernels und ist durch seine vendor-portablen Adapter für plattformübergreifende Projekte geeignet. Es automatisiert die Profilerstellung, erzeugt reproduzierbare Vergleiche und erleichtert die Identifikation von Engpässen in GPU-Kernels.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add ZJtoast/kernel-profiler-skill

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht kernel-profiler-skill?

Kernel-Profiler-Workflow für CUDA- und Triton-Kernel mit Nsight Compute, standardisierten Berichten, visueller Analyse und vendor-portablen Adaptern.

Überblick

Dieser Skill bietet einen automatisierten Workflow zur Profilerstellung von CUDA- und Triton-Kernels mit Nsight Compute (ncu). Er erzeugt standardisierte Berichte, erlaubt visuelle Analyse (z. B. Flamegraph), und stellt Adapter bereit, um Ergebnisse plattformübergreifend zu verwenden.

Unterstützte Plattformen

  • Claude Code
  • Cursor
  • Codex (z. B. Windsurf)

Funktionsweise

  1. Kernel-Profiling – Führt ncu auf einem angegebenen CUDA- oder Triton-Kernel aus und sammelt Metriken (Speichernutzung, Rechenleistung, Latenz).
  2. Berichterstellung – Wandelt rohe Profiling-Daten in ein standardisiertes JSON-Format um (z. B. mit Metadaten wie Kernel-Name, Blockgröße, Registerverbrauch).
  3. Visuelle Analyse – Generiert Flamegraphen oder Tabellen zur Engpassidentifikation.
  4. Vendor-Portable Adapter – Konvertiert Ergebnisse in andere gängige Formate (z. B. Chrome Tracing, Parquet) für Cross-Plattform-Vergleiche.

Verwendung

# Beispiel für ncu-Aufruf
ncu --set full --kernel-name my_kernel --call-passes 1 -o profile_out ./my_cuda_program

Konfiguration

Umgebungsvariablen (optional):

  • NCU_PATH – Pfad zum ncu-Binary (Standard: ncu)
  • OUTPUT_DIR – Verzeichnis für Berichte (Standard: ./profiles)

Abhängigkeiten

  • Nsight Compute CLI (ncu)
  • Python 3.8+ mit json, subprocess, matplotlib (für Flamegraph)

Beispielausgabe

{
  "kernel": "my_kernel",
  "duration_ns": 1234567,
  "registers_per_thread": 32,
  "shared_memory_bytes": 4096
}

Lizenz

MIT

Verwandte Skills