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

SIRIUS timers and roctrace #961

Open
gsavva opened this issue Feb 12, 2024 · 1 comment
Open

SIRIUS timers and roctrace #961

gsavva opened this issue Feb 12, 2024 · 1 comment

Comments

@gsavva
Copy link
Collaborator

gsavva commented Feb 12, 2024

Working using PR #940 and more specifically, roctrace, I found out that the timers logged by SIRIUS itself can be used as regions in Perfetto, as shown below:

image

However, the rocprof post-processing script crashes

/opt/rocm-5.2.3/libexec/rocprofiler/tblextr.py: range id(2) is not found
Profiling data corrupted: './tmp/rpl_data_240212_125625_55109/input_results_240212_125625/'

That's because 3 timers are outside of the scope of rocprof:

  1. PROFILE_START("sirius") link
  2. PROFILE("sirius::initialize") link
  3. PROFILE_STOP("sirius") link

Out of scope meaning that the log of rocprof only logs a STOP but the corresponding START is missing.

Quick solution to enable tracing was to comment-out the three above timer lines.

@gsavva
Copy link
Collaborator Author

gsavva commented Feb 12, 2024

Instead of tracing the whole application or test, a smaller session can be traced as shown in Tracing Control for API or Code Block sesion of ROCm Docs

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

1 participant