Flame graph produced for a single-threaded computation on a 16-core machine is rather useless
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 45/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- julia
- Domain
- performance
Research direction
No files, tests, or entry points are named. Reproduce the issue with a single-threaded Julia computation and JULIA_NUM_THREADS=16, then trace how profiling samples become the flame graph; done means an optional regexp filter can remove sleeping-thread samples without affecting unfiltered output.
Written by the indexing model from the issue text.
Description
This isn't really a bug, but when I run a single-threaded computation in julia with JULIA_NUM_THREADS=16, I get, e.g., ~200 samples from my own code plus ~3000 samples in the functions poptask/wait/task_done_hook. This is correct in the sense that that is where the samples were taken, but when producing the flame graph all of the space in the graph (15/16=93% of it) is occupied by sleeping threads that were sampled.
There isn't such an issue with printed output from Profile because it is as intrusive, the same samples are just printed at the bottom on three lines.
Would you accept a pull request to optionally filter profiling data by a regexp to remove sleeping threads from the flame graph?
This is what it looks like:

- Dominant language
- Julia
- Stars
- 145
- Forks
- 14
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 1
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from tkluck/StatProfilerHTML.jl
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
tkluck/StatProfilerHTML.jl#25 · 1 comment · 1 reaction ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
tkluck/StatProfilerHTML.jl#21 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
tkluck/StatProfilerHTML.jl#19 · 1 comment ·
All issues in tkluck/StatProfilerHTML.jl
Similar issues
-
bug 🐞 distributed 🕸️
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
CliMA/Oceananigans.jl#6049 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
-
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
JuliaGPU/GPUArrays.jl#780 ·
-
Difficulty 2/5 Half a day Newbie friendliness 76/100
epiforecasts/EpiBranch.jl#304 ·