Austin-Tui
Dev tools
python profiler
SHOW HN2020
How HN took it
2 positive, 7 neutral or asking, 2 mixed, 3 critical, out of 14 comments about the project. Thread score -0.01.
Performance: 0 for, 3 againstIdea: 1 for, 0 againstDesign: 1 for, 0 against
The thread, comment by comment
Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.
positive neutral or mixed critical about another commenter or something else the maker
What HN said
What people liked
Interesting TUI and low-overhead sampling approach
From 2 comments
Love the TUI! Which library did you use for it?
shepardrtc on HNTwo other profilers that also let you spy on a running Python program: - py-spy: https://github.com/benfred/py-spy (written in Rust) - pyflame:…
jvns on HN
Can attach to any running Python program, including ones not written by the user
From 1 comment
Also, this kind of profiler is great because you can use it on any running Python program, which is pretty magical and very useful. (especially when it's an application you…
jvns on HN
Objections
Claimed no performance cost is questioned; sampling uses CPU and may impact single-CPU or multi-process setups
From 2 comments
Two other profilers that also let you spy on a running Python program: - py-spy: https://github.com/benfred/py-spy (written in Rust) - pyflame:…
jvns on HNAll good points. The "no performance cost" is indeed more like "negligible performance costs". That's because these days multicore architectures are quite ubiquitous and standard…
p403n1x87 on HN
Statistical sampling can miss fast function calls
From 1 comment
For these kind of things one could use https://github.com/P403n1x87/austin-python An early attempt at an APM that was specifically designed to measure endpoint response times was…
p403n1x87 on HN
Questions
How does it attach to Python in Docker containers from the host
From 2 comments
Can Austin attach to python process running in the docker container from the host system? `sudo austin-tui -Cp <pid>` I used pyflame for that at some point.
vvladymyrov on HNThat should work
p403n1x87 on HN
Does it work with Python 2 environments
From 2 comments
Is it possible to spy from a python script running in a virtual python 2 environment?
iwebdevfromhome on HNyep :)
p403n1x87 on HN
Difference between a TUI and a CLI
From 2 comments
What’s the difference between a TUI and a CLI? (Also my preferred TUI acronym is tactile user interface).
Pulcinella on HNI would say that a CLI is primarily for entering commands, while a TUI is primarily for viewing and interacting with data.
emddudley on HN
Alternatives named
py-spy
From 2 comments
Two other profilers that also let you spy on a running Python program: - py-spy: https://github.com/benfred/py-spy (written in Rust) - pyflame:…
jvns on HN> you can either race with the program and hope that you read its memory to get the function stack before it changes what function it's running (and you're likely to win the…
benfrederickson on HN
pyflame
From 2 comments
Two other profilers that also let you spy on a running Python program: - py-spy: https://github.com/benfred/py-spy (written in Rust) - pyflame:…
jvns on HNCan Austin attach to python process running in the docker container from the host system? `sudo austin-tui -Cp <pid>` I used pyflame for that at some point.
vvladymyrov on HN
pyinstrument
From 2 comments
Also, this kind of profiler is great because you can use it on any running Python program, which is pretty magical and very useful. (especially when it's an application you…
jvns on HNPyinstrument might be easier to profile web requests: https://github.com/joerick/pyinstrument#profile-a-web-request-in-django
galacticdessert on HN
dtrace
From 1 comment
Wasn't there lots of work around using dtrace for this?
RantyDave on HN