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

[SYCL 2020] Add atomic_ref, refactor atomics, implement atomic builtins for all types and operations #584

Merged
merged 11 commits into from
Jul 2, 2021

Conversation

illuhad
Copy link
Collaborator

@illuhad illuhad commented Jun 27, 2021

  • Add SYCL 2020 atomic_ref
  • Refactor atomics in a fashion similar to how math builtins work: A common atomic_builtins.hpp header includes backend-specific headers which provide __hipsycl_atomic_* backend builtins. These can then be used by both atomic and atomic_ref classes.
  • Add support for previously unsupported atomic operations, such as load/store on GPU, or floating point atomics on CPU by adding appropriate CAS emulations. With this PR, all atomic operations are supported for all types on all backends (except SPIR-V, which requires more work in a separate PR)
  • Add test coverage

@illuhad
Copy link
Collaborator Author

illuhad commented Jun 28, 2021

@hipSYCL-ci-bot test again.

@illuhad illuhad marked this pull request as ready for review June 28, 2021 22:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant