💻 Développement

performance-profiler

Diagnostic et optimisation des performances d'applications.

⚡ Installation & lancement en 1 commande

Copiez-collez dans votre terminal : le skill s'installe dans ~/.claude/skills et Claude Code se lance directement dessus.

macOS / Linux
curl -fsSL https://raw.githubusercontent.com/khalilbenaz/claude-skills-collection/main/install.sh | sh -s -- performance-profiler --launch
Windows (PowerShell)
iex "& { $(iwr -useb https://raw.githubusercontent.com/khalilbenaz/claude-skills-collection/main/install.ps1) } performance-profiler -Launch"

🚀 Déjà installé ?

claude "/performance-profiler"

Ou tapez /performance-profiler dans une session Claude Code, ou décrivez simplement votre besoin — le skill se déclenche automatiquement via le skill-router.

🔑 Déclencheurs automatiques

Le skill s'active automatiquement quand votre demande contient :

performancelentoptimiserprofilingmemory leakCPUlatencebottleneckmon app est lentetemps de réponse

📦 Installation manuelle

git clone https://github.com/khalilbenaz/claude-skills-collection.git cp -r claude-skills-collection/dev-skills/performance-profiler ~/.claude/skills/

Source : dev-skills/performance-profiler

đź“– Manuel

Performance Profiler

Workflow

  1. Identifier le symptôme (lenteur, haute CPU, memory leak, timeouts) — recueillir les métriques observées, les conditions de reproduction et l'environnement affecté (prod, staging, local).
  2. Choisir l'outil de profiling adapté à la stack : dotTrace ou PerfView pour .NET, Chrome DevTools ou Clinic.js pour Node.js/JS, cProfile ou Py-Spy pour Python, async-profiler pour Java/JVM, perf ou pprof pour Go.
  3. Profiling CPU : capturer les hot paths, identifier les algorithmes coûteux (O(n²), boucles imbriquées), repérer les appels redondants et les calculs inutiles dans les chemins critiques.
  4. Profiling mémoire : analyser les allocations par type, mesurer la GC pressure (fréquence et durée des collections), détecter les memory leaks et l'object retention (références circulaires, event handlers non désabonnés).
  5. Profiling I/O : diagnostiquer les requêtes DB (N+1 queries, full scans, missing indexes), les appels réseau synchrones bloquants, les accès fichiers non buffurisés et les mauvais usages async/await (deadlocks, sync-over-async).
  6. Analyser les résultats : interpréter les flame graphs (largeur = temps CPU), les call trees (top-down vs bottom-up), les allocation reports et les timeline snapshots pour hiérarchiser les optimisations.
  7. Appliquer les optimisations ciblées : caching (mémoire, distribué), batching des requêtes DB, lazy loading, connection pooling, remplacement d'algorithmes, index DB, parallelisation appropriée.
  8. Benchmarker avant/après : mesurer l'impact précis avec BenchmarkDotNet (.NET), hyperfine (CLI), pytest-benchmark (Python), wrk/k6 (HTTP) ; documenter les gains et les régressions éventuelles.

Règles