-
Notifications
You must be signed in to change notification settings - Fork 65
Update profiling docs: rocprof v1, v3 and roctx #862
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
base: master
Are you sure you want to change the base?
Conversation
|
Thanks for the update! I will try it out on the CI machines and may add some infos about profiling with MPI as well. WRT ROCTX, given that only these 2 functions seem to work for now, I wonder whether it would make sense to have them exposed by AMDGPU instead of relying on ROCTX.jl just for that? |
Have you tried the others? I haven't myself as range push and pop were sufficient for my needs :)
I don't know why NVTX is a separate package from CUDA, maybe the same reasoning applies here. It is possible that NVTX is a very light (and hard if the code is annotated) dependency whereas package authors prefer to leave CUDA support in an ext module? |
|
|
||
| [rocprofv2](https://github.com/ROCm/rocprofiler?tab=readme-ov-file#rocprofiler-v2) | ||
| allows profiling both HSA & HIP API calls (rocprof being deprecated). | ||
| [rocprof](https://github.com/ROCm/rocm-systems/tree/develop/projects/rocprofiler) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| [rocprof](https://github.com/ROCm/rocm-systems/tree/develop/projects/rocprofiler) | |
| [rocprof](https://rocm.docs.amd.com/projects/rocprofiler/en/latest/index.html) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Links to the doc
| allows profiling both HSA & HIP API calls (rocprof being deprecated). | ||
| [rocprof](https://github.com/ROCm/rocm-systems/tree/develop/projects/rocprofiler) | ||
| allows profiling HSA & HIP API calls, kernel launches, and more... | ||
| Multiple major versions are available: `rocprof`, `rocprofv2` and `rocprofv3`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One could add upfront here a comment stating that rocprofv3 is now to be used as others are now deprecated (unless one is on a system where it may not work).
| While [ROCTX.jl](https://github.com/JuliaGPU/ROCTX.jl) aims to offer a Julia wrapper around it, | ||
| it does not seem to be working yet. PRs welcome! | ||
| (Note: the `ccall`s above do _not_ require ROCTX.jl to be loaded!) | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this addition!
|
I checked the various profiling tool version on the CI machine and with ROCm 6.4 all seem to work in reporting basic tracing info. Maybe, before merging, one could simplify and streamline further the doc, focussing on v3 while still showing how to launch profiling with v2 and v1. Also, one could add to consistently for each version the After this, I would be happy to merge - thanks! |
Hi, this PR is the result of trying to profile some Julia code on LUMI (default ROCm version 6.0.something, there is a build of 6.2.4 available, planned upgrade to 6.3 soon), and eventually succeeding after multiple days. Please let me know if any information is wrong and I will happily correct it. It would also be helpful if others with more experience could run the various commands on other versions of ROCm and see if the situation is different there.
Here is a test script that I used:
PS: Given the existence of #801, I suppose that rocprofv3 is not expected to be working yet?