Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Option to exclude idle threads #19

Open
NHDaly opened this issue Mar 21, 2020 · 3 comments
Open

Option to exclude idle threads #19

NHDaly opened this issue Mar 21, 2020 · 3 comments

Comments

@NHDaly
Copy link
Member

NHDaly commented Mar 21, 2020

Profile currently reports all idle threads sitting in __psynch_cvwait. So the more threads you are using with Julia, the smaller the percentage of the report your actual work will be. For example, this profile was taken on my machine with 6 threads (the default when running in Juno), when i was measuring only single-threaded work:

Screen Shot 2020-03-21 at 11 31 13 AM

@NHDaly
Copy link
Member Author

NHDaly commented Apr 19, 2020

We learned after asking on the google/pprof repo (they replied very promptly, which is wonderful! ☺️) that you can enable relative percentages via -relative_percentages, and then paths you ignore in the Web UI (or through -ignore) will not be counted when computing percentages for CPU usage!

google/pprof#516 (comment)

What this means for us:

  1. I think we should probably just always set -relative_percentages when spawning the UI, maybe with an option to not do that. But it seems to me like people would basically always want this?
  2. We could consider an option where we automatically filter out nodes like these __psynch_cvwait when opening PProf :)

CC: @cscherrer

@vchuravy
Copy link
Member

I am in favour for doing relative percentages!

@NHDaly
Copy link
Member Author

NHDaly commented Apr 19, 2020

:) Cool! I just added a flag and verified that it works! :) Will push up now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants