profiling-explorer for Python
A new tool called profiling‑explorer provides a table‑based interface to explore Python profiling pstats files, making it easier to identify hotspots and optimise code. The utility is positioned for developers who need clearer views into runtime performance. (x.com)
Python developers have a new way to inspect performance data: profiling-explorer turns `.pstats` files into a sortable browser table instead of a command-line report. (github.com) The package was released on April 2, 2026 as version 1.0.1 on Python Package Index, with support for Python 3.10 through 3.14. It installs with `python -m pip install profiling-explorer` and opens a local report from a saved profile file. (pypi.org) A profile is a record of which functions ran and how long they took, and Python stores many of those records in `pstats` files. profiling-explorer reads files produced by `cProfile` on older Python versions and by `profiling.tracing` and `profiling.sampling` in newer workflows. (docs.python.org, pypi.org) The interface keeps the familiar table shape of `pstats` but adds controls that are easier to scan. Users can sort by call count, internal milliseconds, or cumulative milliseconds, filter by filename or function name, and click through to callers and callees. (github.com, adamj.eu) Adam Johnson, the tool’s author, said he built it after repeated optimization work at Rippling, in Django, and in other Python projects. In his April 3, 2026 post, he wrote that the standard `pstats` command-line interface felt “clunky and slow” for comparing many numbers quickly. (adamj.eu) The timing lines up with a broader change in Python’s profiling tools. Python 3.15 documentation says the new `profiling` package groups both deterministic tracing and statistical sampling profilers under one namespace, with `profiling.sampling` added in version 3.15. (docs.python.org) That matters for the file format profiling-explorer targets: Python’s new sampling profiler can emit `pstats` output, but the standard docs emphasize richer formats such as flame graphs, heatmaps, and Firefox Profiler traces. profiling-explorer focuses on the simpler table view for developers who want to skim functions and timings at a glance. (docs.python.org, github.com) It is not the first browser-based viewer for Python profiling data. An older project, `pstats_viewer`, also opens `pstats` files in a web interface, but its public repository shows no packaged release and describes a much simpler frontend. (github.com) profiling-explorer’s pitch is narrower than a full visualization suite and more concrete than a raw terminal dump: take the profile file Python already writes, open it in a browser, and sort until the slow code stands out. (github.com, pypi.org)