OpenMP Offloading Validation & Verification Suite; Official repository. We have migrated from bitbucket!! For documentation, results, publication and presentations, please check out our website ->
tests/5.0/target_parallel_loop/test_target_parallel_loop_bind.c: Contrary to Fortran, loop variables not associated with the OpenMP construct are not implicitly private. There are three solutions: collapse(3), declaring the variable inside the for statement (for (int j = ...) or to explicitly use a private clause; this commit does the latter.
tests/5.0/teams_loop/test_target_teams_loop_defaultmap.c: When updating the same part of a in multiple loops as in testDefaultMapToFromScalar, there is a race. Solution: #pragma omp atomic update or reduction(+:x). However, as atomic is only permitted since the second preview for OpenMP 6.0 (i.e. TR12), this commit uses the reduction. (The restriction is a bit hidden: It is for the order clause and loop implies order(concurrent).)
@spophale , @seyonglee, @fel-cab – please review.
@ronlieb – likewise, if you want, given that looked at the test_target_parallel_loop_bind.c testcase in #784.
Follow up to Pull Req. #784 and #761
tests/5.0/target_parallel_loop/test_target_parallel_loop_bind.c: Contrary to Fortran, loop variables not associated with the OpenMP construct are not implicitly
private
. There are three solutions:collapse(3)
, declaring the variable inside thefor
statement (for (int j = ...
) or to explicitly use aprivate
clause; this commit does the latter.tests/5.0/teams_loop/test_target_teams_loop_defaultmap.c: When updating the same part of a in multiple loops as in
testDefaultMapToFromScalar
, there is a race. Solution:#pragma omp atomic update
orreduction(+:x)
. However, asatomic
is only permitted since the second preview for OpenMP 6.0 (i.e. TR12), this commit uses the reduction. (The restriction is a bit hidden: It is for theorder
clause andloop
impliesorder(concurrent)
.)@spophale , @seyonglee, @fel-cab – please review. @ronlieb – likewise, if you want, given that looked at the test_target_parallel_loop_bind.c testcase in #784.