Hacker Newsnew | past | comments | ask | show | jobs | submit | p403n1x87's commentslogin

I am delighted to announce the 4.0 release of Austin. If you haven't heard of Austin before, it is an open-source out-of-process frame stack sampler for CPython, distributed under the GPLv3 license. It can be used to obtain statistical profiling data for a running Python application with no manual instrumentation and virtually zero impact on the runtime. You can find the code at

https://github.com/P403n1x87/austin

The main highlights of the new release are the support for Python 3.14, as well as many substantial performance improvements that make Austin one of the most accurate sampling profilers for CPython. More details about what's new and bug-fixes can be found in the changelog at

https://github.com/P403n1x87/austin/blob/master/ChangeLog

Installing Austin is as easy as running

pip install austin-dist

on any supported combination of architecture and platform. More installation options are available in the README file from the GitHub repository, along with usage details, as well as some examples of Austin in action. Details on how to contribute to Austin's development can be found at the bottom of the page.

As for ways of using Austin, the Austin VS Code extension provides a smooth interactive profiling experience, with interactive flame graphs straight into the text editor to allow you to quickly jump to the source code with a simple click. You can find the extension on the Visual Studio Marketplace and install it directly from VS Code:

https://marketplace.visualstudio.com/items?itemName=p403n1x8...

An Austin docker image, based on the latest Ubuntu image, is also available from Docker Hub:

https://hub.docker.com/r/p403n1x87/austin

Austin is a free and open-source project. A lot of effort goes into its development to ensure the best performance and that it stays up-to-date with the latest Python releases. If you find it useful, consider sponsoring this project on GitHub at https://github.com/sponsors/P403n1x87.


This latest release comes with support for CPython 3.13


It is still in experimental stages, but would you be willing to test the memory mode of Echion? (https://github.com/P403n1x87/echion). It is essentially tracing of all memory allocations. Mind that, if an allocation is followed by a matching de-allocation, it won't be reported; so if you profile from start till end, and all the memory is released, the profile should be almost empty (in reality this will almost never be the case); this might explain why the data doesn't seem to make sense from the tools you have tried already (assuming they do a similar thing).



There is a "live" flamegraph TUI that uses Austin for those interested in Python profiling https://github.com/P403n1x87/austin-tui. The data collected can be exported and then converted into pprof, and analysed further with flameshow etc...



The Austin binary can now be installed from PyPI with pip/pipx on all supported platforms and architectures


The latest 3.5 release of Austin brings support for column-level location information exposed by CPython 3.11, which makes it the first statistical profiler for CPython to provide timing information to the finer-grained expression level.


This should work with anything https://github.com/P403n1x87/austin


Hmm some elements of that TUI look vaguely familiar ... where have I seen them before?


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: