Přeskočit na obsah
_CORE
AI & agentní systémy Podnikové informační systémy Cloud & Platform Engineering Datová platforma & integrace Bezpečnost & compliance QA, testování & observabilita IoT, automatizace & robotika Mobilní & digitální produkty Bankovnictví & finance Pojišťovnictví Veřejná správa Obrana & bezpečnost Zdravotnictví Energetika & utility Telco & média Průmysl & výroba Logistika & e-commerce Retail & věrnostní programy
Reference Technologie Blog Know-how Nástroje
O nás Spolupráce Kariéra
CS EN DE
Pojďme to probrat

Python profiling: kompletní návod

10. 08. 2024 Aktualizováno: 27. 03. 2026 1 min čtení intermediate

Python je pomalý? Možná. Ale nejdřív změřte kde.

cProfile

python -m cProfile -s cumulative app.py

snakeviz

python -m cProfile -o profile.prof app.py
snakeviz profile.prof

line_profiler

@profile
def slow_function(): …

kernprof -l -v script.py

memory_profiler

python -m memory_profiler script.py

py-spy — sampling bez overhead

py-spy record -o profile.svg – python app.py

Optimalizace

  • Generators místo lists
  • dict/set pro lookup
  • functools.lru_cache
  • numpy pro numeriku
  • multiprocessing pro CPU-bound
  • asyncio pro I/O-bound

Kdy který nástroj

cProfile je výchozí volba pro celkový přehled — ukazuje, kolik času se stráví v každé funkci. snakeviz vizualizuje cProfile data jako interaktivní sunburst diagram. line_profiler je nezbytný pro identifikaci pomalých řádků uvnitř funkce — dekorujte podezřelou funkci @profile a spusťte kernprof.

py-spy je sampling profiler, který se připojí k běžícímu procesu bez restartování a bez overhead. Ideální pro produkční debugging. memory_profiler odhaluje memory leaky a zbytečné alokace — každý řádek funkce ukazuje přírůstek paměti. Pro NumPy/Pandas kód použijte scalene, který rozlišuje mezi Python a C kódem. Klíčová pravidla optimalizace: generators místo list comprehensions pro velké datasety, dict/set pro O(1) lookup místo lineárního hledání v seznamech, a asyncio pro I/O-bound operace.

Workflow

cProfile → snakeviz → line_profiler → optimalizace → měření znovu.

pythonperformanceprofiling
Sdílet:

CORE SYSTEMS tým

Stavíme core systémy a AI agenty, které drží provoz. 15 let zkušeností s enterprise IT.