Speed Without Drag
summary
Practical walkthrough evaluates concrete gains across low‑friction numerical Python tools using a generated diagonal polygon and the shoelace formula as the benchmark. Vectorizing with NumPy to milliseconds cuts seconds to tens or single‑digit milliseconds; Numba and Parakeet push runtimes lower (examples show ~40× vectorized speedups and Parakeet down to ~1.2 ms from 9 ms). NumExpr/NumExpr‑style tiling gives ~4× improvements, Theano favors GPU (worse on CPU), and PyPy 30ms vs CPython 2.5s shows interpreter choices matter.
AI-written summary · about
chapters (14)
- 0:00Introduction
- 3:25Why Python is slow
- 4:07Think before optimizing
- 8:02Speed up numerical Python
- 12:38NumPy speed improvements
- 14:06Numba JIT compiler
- 17:23Parakeet optimizations
- 19:11Numexpr cache efficiency
- 20:57Theano GPU acceleration
- 23:01PyPy JIT performance
- 26:56Jython alternatives
- 28:26Future Python speed
- 31:15When to leave Python
- 32:19Q&A
related talks
34mNumPy: vectorize your brain
22mSupercharge Scientific Computing in Python with Numba
35mVectorization: How slow Python runs fast code
37mUsing Numba Effectively Today
28mWhy Python Loops Are "Slow": A Gentle Introduction to Interpretation, Bytecode, and Fast Code
01h 21mAccelerating Python With C++
33mWhy is Python slow?
29mVectorize using linear algebra and NumPy to make your Python code fast
