29 min

They made Python faster with this compiler option The Backend Engineering Show with Hussein Nasser

    • Technology

Fundamentals of Operating Systems Course
https://oscourse.win

Looks like fedora is compiling cpython with the -o3 flag, which does aggressive function inlining among other optimizations.

This seems to improve python benchmarks performance by at most 1.16x at a cost of an extra 3MB in binary size (text segment). Although it does seem to slow down some benchmarks as well though not significantly.

O1 - local register allocation, subexpression elimination
O2 - Function inlining only small functions
O3 - Agressive inlining, SMID

0:00 Intro
1:00 Fedora Linux gets Fast Python
5:40 What is Compiling?
9:00 Compiling with No Optimization
12:10 Compiling with -O1
15:30 Compiling with -O2
20:00 Compiling with -O3
23:20 Showing Numbers

Backend Troubleshooting Course
https://performance.husseinnasser.com

Fundamentals of Operating Systems Course
https://oscourse.win

Looks like fedora is compiling cpython with the -o3 flag, which does aggressive function inlining among other optimizations.

This seems to improve python benchmarks performance by at most 1.16x at a cost of an extra 3MB in binary size (text segment). Although it does seem to slow down some benchmarks as well though not significantly.

O1 - local register allocation, subexpression elimination
O2 - Function inlining only small functions
O3 - Agressive inlining, SMID

0:00 Intro
1:00 Fedora Linux gets Fast Python
5:40 What is Compiling?
9:00 Compiling with No Optimization
12:10 Compiling with -O1
15:30 Compiling with -O2
20:00 Compiling with -O3
23:20 Showing Numbers

Backend Troubleshooting Course
https://performance.husseinnasser.com

29 min

Top Podcasts In Technology

خرفني عن فلسطين | Tell me about Palestine
Tala morrar
The Vergecast
The Verge
Apple Events (audio)
Apple
Apple Events (video)
Apple
This Week in Startups
Jason Calacanis
Lex Fridman Podcast
Lex Fridman