Initial OpenMP/GPU support#228
Open
pbartholomew08 wants to merge 35 commits into
Open
Conversation
44afac1 to
86a878a
Compare
ia267
requested changes
Apr 6, 2026
ia267
left a comment
Collaborator
There was a problem hiding this comment.
Couple of things to address before merging.
CFD-Xing
reviewed
Apr 7, 2026
CFD-Xing
reviewed
Apr 7, 2026
CFD-Xing
reviewed
May 18, 2026
CFD-Xing
reviewed
May 18, 2026
CFD-Xing
reviewed
May 18, 2026
It now behaves polymorphically and will create device fields when that is the `next` type and host fields otherwise
As libx3d2_backends links libx3d2 and xcompact/tests link both the linking order must be libx3d2_backends then libx3d2 to prevent duplicate symbols during linking.
This is to allow initialisation of the base class whether called by OMP/CPU or the OMP/TGT object
The code runs through the test successfully - need to confirm offload and check for data movement
Note this is only working on AMD GPUs (although it should be supported on NVIDIA GPUs w/Cray compiler)
The Cray environment should handle this automatically
The user must now set OMP_TGT_ARCH when building code for OpenMP target offloading using -DOMP_TGT_ARCH
As they have a finalise procedure the constructor pattern will cause a deallocation on the temporary object returned (Fortran lacks copy constructors) and the received object lacks attached GPU memory
CFD-Xing
reviewed
Jul 6, 2026
ia267
requested changes
Jul 6, 2026
ia267
left a comment
Collaborator
There was a problem hiding this comment.
3 small changes to be made - rest of the stuff we can do it in a separate issue.
Member
Author
|
I believe all issues are addressed |
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This branch implements the basic offloading of data using openMP with the ability to perform the
vecaddoperation.