-
Notifications
You must be signed in to change notification settings - Fork 110
Added GPU debugging and update cursor rules #952
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
Conversation
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
docs/documentation/gpuDebugging.md
Outdated
LIBOMPTARGET_JIT_OPT_LEVEL=-O{0,1,2,3} | ||
``` | ||
- This environment variable can be used to change the optimization pipeline used to optimize the embedded device code as part of the device JIT. | ||
- The value is corresponds to the -O{0,1,2,3} command line argument passed to clang. |
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.
-O{0,1,2,3}
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.
minor fixes
User description
Description
Added documentation for debugging help with GPUs
Updated cursor rules to use the new GPU macros instead of OpenACC
Fixes #(issue) [optional]
Type of change
Please delete options that are not relevant.
Scope
If you cannot check the above box, please split your PR into multiple PRs that each have a common goal.
How Has This Been Tested?
Please describe the tests that you ran to verify your changes.
Provide instructions so we can reproduce.
Please also list any relevant details for your test configuration
Test Configuration:
Checklist
docs/
)examples/
that demonstrate my new feature performing as expected.They run to completion and demonstrate "interesting physics"
./mfc.sh format
before committing my codeIf your code changes any code source files (anything in
src/simulation
)To make sure the code is performing as expected on GPU devices, I have:
nvtx
ranges so that they can be identified in profiles./mfc.sh run XXXX --gpu -t simulation --nsys
, and have attached the output file (.nsys-rep
) and plain text results to this PR./mfc.sh run XXXX --gpu -t simulation --rsys --hip-trace
, and have attached the output file and plain text results to this PR.PR Type
Documentation, Enhancement
Description
Added comprehensive GPU debugging documentation
Updated cursor rules to use FYPP macros
Replaced OpenACC directives with GPU macros
Added debugging tools for Cray and NVHPC compilers
Diagram Walkthrough
File Walkthrough
mfc-agent-rules.mdc
Update cursor rules for FYPP GPU macros
.cursor/rules/mfc-agent-rules.mdc
OpenACC directives
!$acc routine seq
to$:GPU_ROUTINE
macro syntax!$acc parallel loop
with$:GPU_PARALLEL_FOR
macrogpuDebugging.md
Add comprehensive GPU debugging guide
docs/documentation/gpuDebugging.md
readme.md
Add GPU debugging link to documentation index
docs/documentation/readme.md