Zum Inhalt springen
uencoder

Profiling

Profiling sampelt die Ressourcennutzung eines Programms zur Laufzeit (CPU/Speicher/IO), lokalisiert Hot-Funktionen und Engpässe und leitet so die Optimierung.

Zweck

Leistungsengpässe anhand von Daten lokalisieren und Spekulation statt Messung vermeiden.

Mechanismus

CPU-Profil: sampelt Callstacks, um zeitintensive Funktionen zu finden. Heap-Profil: Speicherallokations-Hotspots. Flamegraphs visualisieren die Stackzeit. Node --prof, Python cProfile, Java JFR. Sampling in Produktion minimiert den Overhead.

Anwendungsfälle

  • Leistungsoptimierung
  • Engpassidentifikation
  • Flamegraphs

Verwandte Begriffe

References