Skip to content
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 support for excluding maths functions from GPU offload regions #2856

Open
arporter opened this issue Jan 17, 2025 · 1 comment
Open

Add support for excluding maths functions from GPU offload regions #2856

arporter opened this issue Jan 17, 2025 · 1 comment
Labels
enhancement NG-ARCH Issues relevant to the GPU parallelisation of LFRic and other models expected to be used in NG-ARCH

Comments

@arporter
Copy link
Member

During the NG-Arch NEMO hackathon we concluded that some numerical differences (between the results from NEMO on CPU vs GPU) result from differences in implementation of certain maths functions on those architectures. However, in order to test for correctness of PSyclone transformations, we really want to be able to be confident that any numerical differences are arising from errors. Therefore, it would be good to have support in PSyclone for an option to exclude certain maths functions from being offloaded to the GPU. This would make testing much easier. Note, this is not intended to be something that would be used in production.

@arporter arporter added enhancement NG-ARCH Issues relevant to the GPU parallelisation of LFRic and other models expected to be used in NG-ARCH labels Jan 17, 2025
@arporter
Copy link
Member Author

Addy found the following paper discussing numerical differences between AMD and NVIDIA GPUs: https://conferences.computer.org/sc-wpub/pdfs/SC-W2024-6oZmigAQfgJ1GhPL0yE3pS/555400a547/555400a547.pdf

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement NG-ARCH Issues relevant to the GPU parallelisation of LFRic and other models expected to be used in NG-ARCH
Projects
Status: No status
Development

No branches or pull requests

1 participant