A tour of (some) Python JIT compilers
- Track:
- Python Core, Internals, Extensions
- Type:
- Talk
- Level:
- advanced
- Room:
- Forum Hall
- Start:
- 12:20 on 16 July 2025
- Duration:
- 30 minutes
Abstract
Python’s performance has always been a hot topic. A new experimental JIT compiler was released in Python 3.13. PyPy, with its tracing JIT, has been around for a long time, and GraalPy, with a more traditional method-based JIT approach, has recently been gaining traction in the community. We will take you on a tour of these JIT compilers, offering a sneak peek under their hoods. We will examine what kind of Python code can benefit most from JIT technology and what kind of code will not benefit at all.
Beyond the current landscape, we’ll also look into the future of JIT compilation in Python. Have you ever rewritten Python code in C because it was too slow? What if we told you that in the future, this might not be necessary? What if we told you that rewriting to C might actually slow down otherwise performant Python code? How does HPy, the alternative Python C API, fit into this picture? And if that isn't enough, we will also cast some predictions about what may happen when JIT meets free threading—aka no-GIL 💣.