Skip to content

Commit adce9d5

Browse files
sbryngelsonclaude
andcommitted
Fix missing private clauses in 3D viscous GPU loops
The 3D shear stress and bulk stress GPU parallel loops were missing rho_visc, gamma_visc, pi_inf_visc, and alpha_visc_sum from their private clauses. The corresponding 2D loops already had these variables listed. Without privatization, these variables could cause race conditions on GPU. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent ab5082e commit adce9d5

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

src/simulation/m_viscous.fpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -319,7 +319,7 @@ contains
319319
#:if not MFC_CASE_OPTIMIZATION or num_dims > 2
320320

321321
if (shear_stress) then ! Shear stresses
322-
$:GPU_PARALLEL_LOOP(collapse=3, private='[alpha_visc, alpha_rho_visc, Re_visc, tau_Re]')
322+
$:GPU_PARALLEL_LOOP(collapse=3, private='[rho_visc, gamma_visc, pi_inf_visc, alpha_visc_sum, alpha_visc, alpha_rho_visc, Re_visc, tau_Re]')
323323
do l = is3_viscous%beg, is3_viscous%end
324324
do k = -1, 1
325325
do j = is1_viscous%beg, is1_viscous%end
@@ -428,7 +428,7 @@ contains
428428
end if
429429

430430
if (bulk_stress) then ! Bulk stresses
431-
$:GPU_PARALLEL_LOOP(collapse=3, private='[alpha_visc, alpha_rho_visc, Re_visc, tau_Re]')
431+
$:GPU_PARALLEL_LOOP(collapse=3, private='[rho_visc, gamma_visc, pi_inf_visc, alpha_visc_sum, alpha_visc, alpha_rho_visc, Re_visc, tau_Re]')
432432
do l = is3_viscous%beg, is3_viscous%end
433433
do k = -1, 1
434434
do j = is1_viscous%beg, is1_viscous%end

0 commit comments

Comments
 (0)