@@ -98,6 +98,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
9898 }
9999 }
100100 }
101+ itm.barrier (::sycl::access::fence_space::local_space);
101102
102103 SYCL_FOREACH_THREAD_DIRECT (dz, 0 , mpa_at::D1D ) {
103104 SYCL_FOREACH_THREAD_DIRECT (dy, 1 , mpa_at::D1D ) {
@@ -106,6 +107,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
106107 }
107108 }
108109 }
110+ itm.barrier (::sycl::access::fence_space::local_space);
109111
110112 SYCL_FOREACH_THREAD_DIRECT (dz, 0 , mpa_at::D1D ) {
111113 SYCL_FOREACH_THREAD_DIRECT (qy, 1 , mpa_at::Q1D ) {
@@ -114,6 +116,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
114116 }
115117 }
116118 }
119+ itm.barrier (::sycl::access::fence_space::local_space);
117120
118121 SYCL_FOREACH_THREAD_DIRECT (qz, 0 , mpa_at::Q1D ) {
119122 SYCL_FOREACH_THREAD_DIRECT (qy, 1 , mpa_at::Q1D ) {
@@ -122,6 +125,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
122125 }
123126 }
124127 }
128+ itm.barrier (::sycl::access::fence_space::local_space);
125129
126130 SYCL_FOREACH_THREAD_DIRECT (qz, 0 , mpa_at::Q1D ) {
127131 SYCL_FOREACH_THREAD_DIRECT (qy, 1 , mpa_at::Q1D ) {
@@ -130,6 +134,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
130134 }
131135 }
132136 }
137+ itm.barrier (::sycl::access::fence_space::local_space);
133138
134139 SYCL_FOREACH_THREAD_DIRECT (qz, 0 , mpa_at::Q1D ) {
135140 SYCL_FOREACH_THREAD_DIRECT (dy, 1 , mpa_at::D1D ) {
@@ -138,6 +143,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
138143 }
139144 }
140145 }
146+ itm.barrier (::sycl::access::fence_space::local_space);
141147
142148 SYCL_FOREACH_THREAD_DIRECT (dz, 0 , mpa_at::D1D ) {
143149 SYCL_FOREACH_THREAD_DIRECT (dy, 2 , mpa_at::D1D ) {
@@ -247,6 +253,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
247253 ); // RAJA::loop<inner_y>
248254 } // lambda ()
249255 ); // RAJA::loop<inner_z>
256+ ctx.teamSync ();
250257
251258
252259 RAJA ::loop<inner_z>(ctx, RAJA::RangeSegment (0 , mpa_at::D1D ),
@@ -262,6 +269,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
262269 ); // RAJA::loop<inner_y>
263270 } // lambda (dz)
264271 ); // RAJA::loop<inner_z>
272+ ctx.teamSync ();
265273
266274 RAJA ::loop<inner_z>(ctx, RAJA::RangeSegment (0 , mpa_at::D1D ),
267275 [&](Index_type dz) {
@@ -276,6 +284,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
276284 ); // RAJA::loop<inner_y>
277285 } // lambda (dz)
278286 ); // RAJA::loop<inner_z>
287+ ctx.teamSync ();
279288
280289 RAJA ::loop<inner_z>(ctx, RAJA::RangeSegment (0 , mpa_at::Q1D ),
281290 [&](Index_type qz) {
@@ -290,6 +299,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
290299 ); // RAJA::loop<inner_y>
291300 } // lambda (qz)
292301 ); // RAJA::loop<inner_z>
302+ ctx.teamSync ();
293303
294304 RAJA ::loop<inner_z>(ctx, RAJA::RangeSegment (0 , mpa_at::Q1D ),
295305 [&](Index_type qz) {
@@ -304,6 +314,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
304314 ); // RAJA::loop<inner_y>
305315 } // lambda (dz)
306316 ); // RAJA::loop<inner_z>
317+ ctx.teamSync ();
307318
308319 RAJA ::loop<inner_z>(ctx, RAJA::RangeSegment (0 , mpa_at::Q1D ),
309320 [&](Index_type qz) {
@@ -318,6 +329,7 @@ void MASS3DPA_ATOMIC::runSyclVariantImpl(VariantID vid) {
318329 ); // RAJA::loop<inner_y>
319330 } // lambda (dz)
320331 ); // RAJA::loop<inner_z>
332+ ctx.teamSync ();
321333
322334
323335 RAJA ::loop<inner_z>(ctx, RAJA::RangeSegment (0 , mpa_at::D1D ),
0 commit comments