At the 2021 Python Language Summit, Guido van Rossum gave a presentation about plans for making CPython faster. This presentation came right after Dino Viehland's talk about Instagram's performance improvements to CPython and made multiple references to it.
Can We Make CPython Faster?
We can, but it's not yet clear by how much. Last October, Mark Shannon shared a plan on GitHub and python-dev. He asked for feedback and said that he could make CPython five times faster in four years, or fifty percent faster per year for four years in a row. He was looking for funding and wouldn't reveal the details of his plan without it.
How Will We Make CPython Faster?
Seven months ago, Guido van Rossum left a brief retirement to work at Microsoft. He was given the freedom to pick a project and decided to work on making CPython faster. Microsoft will be funding a small team consisting of Guido van Rossum, Mark Shannon, Eric Snow, and possibly others.
The team will:
- Collaborate fully and openly with CPython's core developers
- Make incremental changes to CPython
- Take care of maintenance and support
- Keep all project-specific repos open
- Have all discussions in trackers on open GitHub repos
- The byte code
- The compiler
- The internals of a lot of objects
Who Will Benefit?
You'll benefit from the speed increase if you:
- Run CPU-intensive pure Python code
- Use tools or websites built in CPython
- Rewrote your code in C, Cython, C++, or similar to increase speed already (e.g. NumPy, TensorFlow)
- Have code that is mostly waiting for I/O
- Use multithreading
- Need to make your code more algorithmically efficient first
Where Can You Learn More?
To learn more, you can check out the following repos:
- Fork of CPython for staging branches
- Tracker for discussions
- Tools for analysis, benchmarking, and more