-
Notifications
You must be signed in to change notification settings - Fork 419
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Improve AMD GPU support parity (asyncGpuComm, more math functions) (#…
…22791) This PR: * Updates things so the `asyncGpuComm` proc in the GPU module now works when using `CHPL_GPU=amd`. For some reason `hipify-perl` struggles to find the right API to translate the cuda code in our runtime lib for the underlying CUDA API call we make for this (hence why I didn't just get to work from the "get go". But replacing it with the "obvious" API (using `hipMemcpyAsync` in place of `cuMemcpyAsync`) seems to work. * Fixes a bug in how we filter out what extern functions we consider linking to when doing the GPU pass of code generation. We're supposed to limit ourselves to `__device__` functions but for some reason some non device math functions from the C++ standard lib were getting through and this was causing issues for us if we ever called the corresponding functions in GPU code. I've fixed things so these functions now filter out and we now support the same set of math functions as we do for NVIDIA. * Remove `test/gpu/native/studies/shoc/triadchpl.skipif`, I'm not sure why this was skipped before but it seems to work now. * Update our worksharing tests to avoid this bug (#22736) and remove the .skipif files so we now test them with `CHPL_GPU=amd` TODO: * [X] Paratest AMD * [x] Paratest NVIDIA * [X] Paratest NVIDIA (gasnet) * [x] Paratest AMD (AOD) [Reviewed by @DanilaFe]
- Loading branch information
Showing
9 changed files
with
44 additions
and
80 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1 change: 0 additions & 1 deletion
1
test/gpu/native/array_on_device/studies/shoc/triadAodAsync.skipif
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.