Skip to content
This repository was archived by the owner on Mar 28, 2023. It is now read-only.

[SYCL][CUDA] Reduce required sm version for atomic_ref tests #985

Merged
merged 3 commits into from
May 3, 2022

Conversation

t4c1
Copy link

@t4c1 t4c1 commented Apr 11, 2022

Reduces sm version requirement for atomic_ref tests.

Testing this properly would require duplicating all the atomic ref tests for sm_50 (as in this PR) and for sm_70 (for system scope atomics). That would duplicate all the slowest tests. To avoid significant increase of test running time I am instead removing testing for system atomics, which have relatively simple implementations.

Tests intel/llvm#5998.

@@ -287,10 +287,6 @@ template <access::address_space space, typename T, typename Difference = T,
void add_test_scopes(queue q, size_t N) {
std::vector<memory_scope> scopes =
q.get_device().get_info<info::device::atomic_memory_scope_capabilities>();
if (std::find(scopes.begin(), scopes.end(), memory_scope::system) !=

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why are these clauses removed? If we find memory_scope::system shouldn't we test it? And, if we do not, then nothing will happen anyway, no?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As explained in top level comment, these would now have to be in a separate file as they have a different sm version requirement. As atomic_ref tests are among the slowest and there is quite a number of them, this would significantly increase running time for test suite. Instead I opted to just remove those.

steffenlarsen pushed a commit to intel/llvm that referenced this pull request Apr 25, 2022
…m versions (#5998)

Adds software implementations for various atomics for sm versions blow ones where they are supported natively. Now all atomics, except for the ones using system scope are supported regardless of the sm version.

Now `SYCL_USE_NATIVE_FP_ATOMICS` is also defined for CUDA by default.

Closes #5936.

Tested by: intel/llvm-test-suite#985
@t4c1
Copy link
Author

t4c1 commented Apr 26, 2022

@steffenlarsen Now that the feature PR this is testing is merged, so can be this PR, right?

@steffenlarsen steffenlarsen changed the title [CUDA] Reduce required sm version for atomic_ref tests [SYCL][CUDA] Reduce required sm version for atomic_ref tests Apr 26, 2022
@steffenlarsen
Copy link

We still need approval. @cperkinsintel - Are you happy with these changes?

Copy link

@cperkinsintel cperkinsintel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM - sorry for the delay

@pvchupin pvchupin merged commit 5b8908a into intel:intel May 3, 2022
myler pushed a commit to myler/llvm-test-suite that referenced this pull request Jun 17, 2022
Reduces sm version requirement for atomic_ref tests.

Testing this properly would require duplicating all the atomic ref tests for sm_50 (as in this PR) and for sm_70 (for system scope atomics). That would duplicate all the slowest tests. To avoid significant increase of test running time I am instead removing testing for system atomics, which have relatively simple implementations.

Tests intel/llvm#5998
aelovikov-intel pushed a commit to aelovikov-intel/llvm that referenced this pull request Mar 27, 2023
…lvm-test-suite#985)

Reduces sm version requirement for atomic_ref tests.

Testing this properly would require duplicating all the atomic ref tests for sm_50 (as in this PR) and for sm_70 (for system scope atomics). That would duplicate all the slowest tests. To avoid significant increase of test running time I am instead removing testing for system atomics, which have relatively simple implementations.

Tests intel#5998
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants