Zeitperformance mit KI profilieren

Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Thalia Barrera

AI Engineering Curriculum Manager, DataCamp

Was wir behandeln

Lupe untersucht Datenstrukturen

 

  • Code profilen
  • Performance-Engpässe finden
  • Datenstrukturen bewerten
Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Profiling mit cProfile

 

Profil-Inspektion Kap. 1

 

Was cProfile misst:

  • CPU-Zeit pro Funktion
  • Aufgerufene Funktionen
  • Anzahl der Aufrufe
  • Zeit pro Aufruf
Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

KI interpretiert das Profil

Profilanalyse Kap. 1

Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Das Hotspot verstehen

Location Transfer Index

Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Das Hotspot verstehen

Datenstrukturen

Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Effizienzbewertung

Effizienz von Datenstrukturen

 

KI-Bewertung:

  • ✅ Ok für kleine Datenmengen
  • ❌ Fehlende Optimierungen für große Skalierung
Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Deep Dive: HashMapLinear

 

hashmaplinear-class.png

HashMapLinear-Probleme

 

HashMapLinear-Skalierung:

  • ✅ Geeignet für kleine, feste Maps
  • 📉 Lineare Verschlechterung
  • ❌ Problematisch bei unvorhersehbarem Wachstum
Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Nebenläufigkeit: Risiken

Thread-Kollision Race Condition

Thread-Sicherheitsprobleme:

  • Gleichzeitiges Lesen/Schreiben kann razen
  • Risiko von Datenkorruption
Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

KI-gestützte Neuimplementierung

HashMapLinear-Neuimplementierung mit Prompt

 

  • 🔎 KI-Vorschläge immer prüfen
  • 🔎 Vor dem Einsatz testen
Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Benchmark-Validierung

 

Benchmark-Lauf:

benchmarking-run.png

Ergebnisse:

  • Original (HashMapOld): Basiswert
  • Optimiert (HashMapNew): 2x+ schneller
  • ✅ KI-Patch validiert
Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Der KI-unterstützte Optimierungszyklus

 

KI-unterstützter Optimierungszyklus

Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Wichtiges Fazit

 

optimization_cycle_2.png

 

Der iterative Zyklus:

  • Code profilen
  • Dominante Operationen finden
  • Umschreiben, wo es zählt
  • Ergebnisse validieren

🤖 KI hilft uns schneller zu werden mit evidenzbasierten Entscheidungen

Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Lass uns üben!

Fortgeschrittenes, KI-gestütztes Programmieren für Entwickler:innen

Preparing Video For Download...