~/talk

Goodbye GIL: Exploring the Free-threaded mode in Python

Talkat PyCon AU 2026 · 2026-08-26..08-30· [python]
slides:none on file

Python 3.13 adds an optional free‑threaded interpreter and the presenter builds a benchmark repo and a Flask app, uses virtualenvs, sys.is_gil_enabled and k6 and measures real numbers: the reference patch touches 15,000 lines, single‑thread work slows (1.98s → 2.4s, earlier ~30% penalty later 5–10%), IO timings stay similar (~0.61s), CPU multi‑threading shows 3x improvement and Flask CPU throughput rises from ~5.4 to ~19.9 req/s, so free‑threaded Python materially helps CPU‑bound multithreaded workloads.

AI-written summary · about

  1. 0:00Free-threaded Python intro
  2. 3:06Global Interpreter Lock explained
  3. 6:46PEP 703 challenges
  4. 11:35Free-threaded Python state
  5. 12:39Setting up free-threaded mode
  6. 13:44Verifying interpreter
  7. 15:10Single-threaded benchmarks
  8. 17:23I/O bound benchmarks
  9. 20:54CPU bound benchmarks
  10. 23:21Web app performance
  11. 26:37Benchmark summary
  12. 27:42Future of GIL
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.