-
Notifications
You must be signed in to change notification settings - Fork 40
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
Add unit test with high-res timer for DeviceSyncer #237
base: main
Are you sure you want to change the base?
Conversation
The unit test has fixture executions for MI210 hardware. On other GCN architectures, tests may stall out in the polling loop with the DeviceSyncer due to block not being scheduled on SM.
@BKP please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
Contributor License AgreementContribution License AgreementThis Contribution License Agreement (“Agreement”) is agreed to by the party signing below (“You”),
|
case 900: return 27; | ||
case 906: return 25; | ||
case 908: return 25; | ||
case 910: return 25; |
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.
@BKP Thank you for contribution! Could you advise me where these numbers are from? 25MHz looks too small as GPU clock frequency.
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.
The frequency comes from a constant frequency timer.
Information from the instruction can be found in the ISA manual for either MI100 or MI200. (The "27" for GFX900 is not well documented as far as I know, but the "25" from the newer architectures is clearly specified in newer ISA manuals.)
https://gpuopen.com/amd-isa-documentation/
See "s_memrealtime".
The unit test has fixture executions for MI210 hardware. On other GCN architectures, tests may stall out in the polling loop with the DeviceSyncer due to block not being scheduled on SM.