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

PerfGraph Live Print #16298

Merged
merged 45 commits into from Aug 26, 2021
Merged

Conversation

friedmud
Copy link
Contributor

Supersedes #15476

This does several things:

  1. Removes the need to register 99% of perf sections (a couple of corner cases still need it)
  2. Allows for recursive timed printing
  3. All timing sections are now timed prints

To use this... you no longer need to register a section. All you do is the following:

TIME_SECTION("shortName", 4, "Doing Short Name"

The shortName will be shown in PerfGraph print tables. The 4 is the "level" (just like before). Doing Short Name is a message that will show if the time of the section, or the memory created within the section, is too high (similar to the name you would have used for TimedPrint before. That's it.

I still need to update some documentation - but I'm putting this up here to start the testing rounds on it (and get feedback).

Closes #15444

@friedmud friedmud force-pushed the perf_graph_timed_print_rebase_15444 branch 2 times, most recently from e56abc6 to ed4576f Compare November 25, 2020 03:42
Copy link
Contributor

@GiudGiud GiudGiud left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

quick review, have not run it.

Any reason for all the new flushes? Was this an issue?

framework/include/base/MooseApp.h Outdated Show resolved Hide resolved
framework/include/outputs/ConsoleStream.h Outdated Show resolved Hide resolved
framework/include/utils/PerfNode.h Show resolved Hide resolved
framework/src/systems/NonlinearSystem.C Outdated Show resolved Hide resolved
framework/src/utils/PerfGraph.C Show resolved Hide resolved
framework/src/utils/PerfGraph.C Outdated Show resolved Hide resolved
framework/src/utils/PerfGraph.C Outdated Show resolved Hide resolved
framework/src/utils/PerfGraph.C Outdated Show resolved Hide resolved
framework/src/utils/PerfGraphLivePrint.C Outdated Show resolved Hide resolved
@stale
Copy link

stale bot commented Jan 10, 2021

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale PRs that have reached or exceeded 90 days with no activity label Jan 10, 2021
@friedmud friedmud force-pushed the perf_graph_timed_print_rebase_15444 branch from f746bde to 7fa31af Compare March 2, 2021 04:14
@stale stale bot removed the stale PRs that have reached or exceeded 90 days with no activity label Mar 2, 2021
@friedmud friedmud force-pushed the perf_graph_timed_print_rebase_15444 branch from 7fa31af to 5e07b5f Compare March 3, 2021 02:43
@moosebuild
Copy link
Contributor

moosebuild commented Mar 3, 2021

Job Documentation on 26d9748 wanted to post the following:

View the site here

This comment will be updated on new commits.

framework/include/utils/PerfGraph.h Show resolved Hide resolved
framework/include/utils/PerfGraph.h Outdated Show resolved Hide resolved
framework/include/utils/PerfGraph.h Show resolved Hide resolved
framework/include/utils/PerfGraphLivePrint.h Outdated Show resolved Hide resolved
framework/include/utils/PerfGraphRegistry.h Show resolved Hide resolved
framework/src/utils/PerfGraph.C Outdated Show resolved Hide resolved
framework/src/utils/PerfGraph.C Outdated Show resolved Hide resolved
framework/src/utils/PerfGraphLivePrint.C Outdated Show resolved Hide resolved
framework/src/utils/PerfGraphLivePrint.C Outdated Show resolved Hide resolved
framework/src/utils/PerfGraphLivePrint.C Show resolved Hide resolved
@friedmud friedmud force-pushed the perf_graph_timed_print_rebase_15444 branch 6 times, most recently from fa5d49d to a7dd89c Compare March 18, 2021 16:10
@aeslaughter aeslaughter added the P: normal A defect affecting operation with a low possibility of significantly affects. label Apr 12, 2021
@friedmud friedmud force-pushed the perf_graph_timed_print_rebase_15444 branch from 5fd5d8f to 8ca62ae Compare June 3, 2021 21:08
Copy link
Contributor

@andrsd andrsd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice cleanup 👍

framework/include/outputs/ConsoleStream.h Show resolved Hide resolved
framework/include/base/MooseApp.h Outdated Show resolved Hide resolved
framework/include/outputs/ConsoleStream.h Show resolved Hide resolved
framework/include/outputs/OutputWarehouse.h Show resolved Hide resolved
framework/include/outputs/OutputWarehouse.h Show resolved Hide resolved
framework/src/utils/MemoryUtils.C Outdated Show resolved Hide resolved
framework/src/utils/MemoryUtils.C Outdated Show resolved Hide resolved
framework/src/utils/PerfGraph.C Outdated Show resolved Hide resolved
framework/src/utils/PerfGraphLivePrint.C Outdated Show resolved Hide resolved
framework/src/utils/PerfGraphLivePrint.C Outdated Show resolved Hide resolved
@friedmud friedmud force-pushed the perf_graph_timed_print_rebase_15444 branch from cbae8ad to 19ee52f Compare June 16, 2021 21:59
libmesh Outdated Show resolved Hide resolved
@friedmud friedmud force-pushed the perf_graph_timed_print_rebase_15444 branch from 19ee52f to 4a9d4f9 Compare June 16, 2021 22:11
libmesh Outdated Show resolved Hide resolved
@friedmud friedmud force-pushed the perf_graph_timed_print_rebase_15444 branch from 4a9d4f9 to 7623d56 Compare June 16, 2021 22:59
friedmud and others added 14 commits August 17, 2021 16:52
…idaholab#15444

Update framework/src/utils/PerfGraphLivePrint.C

Use a const string for Finished

Co-authored-by: Logan Harbour <loganhharbour@gmail.com>

Update framework/src/utils/PerfGraphLivePrint.C

Change message to const

Co-authored-by: Logan Harbour <loganhharbour@gmail.com>

Update framework/src/utils/PerfGraph.C

Simplify

Co-authored-by: Logan Harbour <loganhharbour@gmail.com>

Removing more timers from stochastic tools refs idaholab#15444

Fixup some debugging stuff left around refs idaholab#15444

Initialize memory refs idaholab#15444

clang format refs idaholab#15444

Fix memory utils refs idaholab#15444

Update framework/src/utils/PerfGraph.C

Co-authored-by: Logan Harbour <loganhharbour@gmail.com>
Remove unused constant refs idaholab#15444

Fix capitilization for enum refs idaholab#15444

Resolve review comments refs idaholab#15444

Fix compile errors refs idaholab#15444

Just debugging refs idaholab#15444

Reduce duplicated code refs idaholab#15444

Add debugging refs idaholab#15444
… way for PerfGraph to read from the registry refs idaholab#15444

Clang-format refs idaholab#15444
…he PGLP is told to stop to make it more efficient refs idaholab#15444

clang format refs idaholab#15444
@friedmud friedmud force-pushed the perf_graph_timed_print_rebase_15444 branch from f65f140 to c738058 Compare August 17, 2021 23:49
@loganharbour
Copy link
Member

Slowly working through a review. I added the remainder of the tests on next + code coverage. This is a pretty big change, good to do it now

@moosebuild
Copy link
Contributor

moosebuild commented Aug 18, 2021

framework/doc/content/source/utils/PerfGraphLivePrint.md Outdated Show resolved Hide resolved
framework/include/outputs/OutputWarehouse.h Outdated Show resolved Hide resolved
framework/include/utils/PerfGraph.h Show resolved Hide resolved
framework/include/utils/PerfGraphLivePrint.h Outdated Show resolved Hide resolved
framework/include/utils/PerfGraphRegistry.h Show resolved Hide resolved
framework/include/utils/PerfNode.h Show resolved Hide resolved
framework/src/problems/FEProblemBase.C Outdated Show resolved Hide resolved
Co-authored-by: Logan Harbour <loganhharbour@gmail.com>
Co-authored-by: Logan Harbour <loganhharbour@gmail.com>
@moosebuild
Copy link
Contributor

All jobs on 26d9748 : invalidated by @milljm

Invalidating all jobs as the server went down part way through

@friedmud friedmud merged commit c8dd435 into idaholab:next Aug 26, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P: normal A defect affecting operation with a low possibility of significantly affects. PR: Failed but allowed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add CPU time in Debug/show_actions and a new parameter Problem/show_initial_setup
9 participants