Why is it slow? Strategies for solving performance problems - presented by Caleb Hattingh

  Рет қаралды 3,324

EuroPython Conference

EuroPython Conference

2 жыл бұрын

EuroPython 2022 - Why is it slow? Strategies for solving performance problems - presented by Caleb Hattingh
[Liffey A on 2022-07-15]
You have a performance problem, and you don't know what to do. All you know is that one of your endpoints or applications is too slow; and perhaps it only affects a certain user or customer. How do you figure out why it's slow, and what can you do to catch performance problems before they hurt users in production?
We'll go through a wide range of strategies for detecting and diagnosing performance problems in typical production workloads. We'll cover both web-based domains as well as backend domains and other analytical applications involving number-crunching and big-data applications.
We'll step through the following high-level strategies:
Tracing: through instrumentation of your code, you will get detailed traces of where the time is spent in generating your web server responses.
Profiling: we'll look at profiling strategies using both the Python built-in cProfile tool, as well as awesome 3rd party libraries like pyspy, including how to use these with pytest
Isolation: how to figure out if performance is affected by CPU, or memory, disk, or network IO limitations.
Reasoning: we'll look at common scenarios that result in performance regressions such as the needless execution of sub-queries in rendering web views, or algorithmic analysis and ""big-O"" notation, or concurrency problems resulting from exhaustion of threads in a pool and asyncio concurrency limitations resulting from overloaded subscription.
Prophylaxis: we'll look at how to include benchmarks within your CI pipeline, including with pytest and other technologies to catch performance regressions ahead of time.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License creativecommons...

Пікірлер
Diagnose slow Python code. (Feat. async/await)
9:57
mCoding
Рет қаралды 211 М.
Human vs Jet Engine
00:19
MrBeast
Рет қаралды 93 МЛН
小蚂蚁会选到什么呢!#火影忍者 #佐助 #家庭
00:47
火影忍者一家
Рет қаралды 119 МЛН
Osman Kalyoncu Sonu Üzücü Saddest Videos Dream Engine 262 #shorts
00:20
Cool Parenting Gadget Against Mosquitos! 🦟👶 #gen
00:21
TheSoul Music Family
Рет қаралды 32 МЛН
Writing Code That Runs FAST on a GPU
15:32
Low Level
Рет қаралды 563 М.
This is why Deep Learning is really weird.
2:06:38
Machine Learning Street Talk
Рет қаралды 391 М.
Solving one of PostgreSQL's biggest weaknesses.
17:12
Dreams of Code
Рет қаралды 204 М.
How AI 'Understands' Images (CLIP) - Computerphile
18:05
Computerphile
Рет қаралды 206 М.
How to deliver 3x faster with effective API design - Michal Cyprian
29:17
EuroPython Conference
Рет қаралды 569
Keeping your projects nice and clean - Jan Musílek
28:59
EuroPython Conference
Рет қаралды 291
How I Would Learn Python FAST in 2024 (if I could start over)
8:01
DecisionForest
Рет қаралды 39 М.
Pydantic Tutorial • Solving Python's Biggest Problem
11:07
pixegami
Рет қаралды 280 М.
I built the same app 10 times // Which JS Framework is best?
21:58
Fireship
Рет қаралды 2,5 МЛН
Human vs Jet Engine
00:19
MrBeast
Рет қаралды 93 МЛН