Post

Linux perf is moving from embedded interpreters to standalone Python scripts

A 49-patch Linux perf series replaces embedded libpython/libperl scripting with standalone Python programs backed by a C extension, cutting one measured perf script run from about 3.75 seconds to 0.106 seconds.

The redesign avoids constructing Python dictionaries for every event, removes interpreter-lifecycle and build-dependency complications, and ports the existing profiling, syscall, scheduling, networking, Intel PT, and database-export scripts to a common perf Python module. It also enables mypy and pylint checks when installed, with opt-outs, and removes the legacy embedded scripting engine. The series is still under review; v2 was posted on September 21, 2026.