User: rhaas Date: 2012/08/27 02:19 PM
Modified: /trunk/src/ GRHydro_UpdateMask.F90, GRHydro_UpdateMaskM.F90
Log: GRHydro: add OpenMP parallelization to IntialAtmosphereReset
From: Roland Haas roland.haas@physics.gatech.edu
File Changes:
Directory: /trunk/src/ ======================
File [modified]: GRHydro_UpdateMask.F90 Delta lines: +7 -0 =================================================================== --- trunk/src/GRHydro_UpdateMask.F90 2012-08-27 19:19:40 UTC (rev 417) +++ trunk/src/GRHydro_UpdateMask.F90 2012-08-27 19:19:44 UTC (rev 418) @@ -201,6 +201,7 @@
CCTK_INT :: i,j,k
+ !$OMP PARALLEL DO PRIVATE(i,j,k) do k = 1, cctk_lsh(3) do j = 1, cctk_lsh(2) do i = 1, cctk_lsh(1) @@ -211,6 +212,7 @@ end do end do end do + !$OMP END PARALLEL DO
call CCTK_INFO("Setting up the atmosphere mask: points with rho<rho_min are set to be atmosphere")
@@ -445,6 +447,7 @@ rho_min = rho_min * initial_atmosphere_factor endif
+!$OMP PARALLEL DO PRIVATE(det,keytemp,i,j,k,anyerr,keyerr) do k = 1, cctk_lsh(3) do j = 1, cctk_lsh(2) do i = 1, cctk_lsh(1) @@ -477,6 +480,7 @@ temperature(i,j,k),y_e(i,j,k)) y_e_con(i,j,k) = dens(i,j,k) * y_e(i,j,k) else + keytemp = 0 call EOS_Omni_press(GRHydro_polytrope_handle,keytemp,GRHydro_eos_rf_prec,n,& rho(i,j,k),eps(i,j,k),xtemp,xye,press(i,j,k),keyerr,anyerr) call EOS_Omni_EpsFromPress(GRHydro_polytrope_handle,keytemp,GRHydro_eos_rf_prec,n,& @@ -518,6 +522,7 @@ temperature_p(i,j,k),y_e_p(i,j,k)) y_e_con_p(i,j,k) = dens_p(i,j,k) * y_e_p(i,j,k) else + keytemp = 0 call EOS_Omni_press(GRHydro_polytrope_handle,keytemp,GRHydro_eos_rf_prec,n,& rho_p(i,j,k),eps_p(i,j,k),xtemp,xye,press_p(i,j,k),keyerr,anyerr) call EOS_Omni_EpsFromPress(GRHydro_polytrope_handle,keytemp,GRHydro_eos_rf_prec,n,& @@ -559,6 +564,7 @@ temperature_p_p(i,j,k),y_e_p_p(i,j,k)) y_e_con_p_p(i,j,k) = dens_p_p(i,j,k) * y_e_p_p(i,j,k) else + keytemp = 0 call EOS_Omni_press(GRHydro_polytrope_handle,keytemp,GRHydro_eos_rf_prec,n,& rho_p_p(i,j,k),eps_p_p(i,j,k),xtemp,xye,press_p_p(i,j,k),keyerr,anyerr) call EOS_Omni_EpsFromPress(GRHydro_polytrope_handle,keytemp,GRHydro_eos_rf_prec,n,& @@ -576,6 +582,7 @@ end do end do end do +!$OMP END PARALLEL DO
end subroutine GRHydro_InitialAtmosphereReset
File [modified]: GRHydro_UpdateMaskM.F90 Delta lines: +6 -0 =================================================================== --- trunk/src/GRHydro_UpdateMaskM.F90 2012-08-27 19:19:40 UTC (rev 417) +++ trunk/src/GRHydro_UpdateMaskM.F90 2012-08-27 19:19:44 UTC (rev 418) @@ -161,6 +161,7 @@ end do end do end do +!$OMP END PARALLEL DO
!!$ call GRHydro_BoundariesM(CCTK_PASS_FTOF) #undef faulty_gxx @@ -316,6 +317,7 @@ rho_min = rho_min * initial_atmosphere_factor endif
+!$OMP PARALLEL DO PRIVATE(det,keytemp,i,j,k,anyerr,keyerr) do k = 1, cctk_lsh(3) do j = 1, cctk_lsh(2) do i = 1, cctk_lsh(1) @@ -350,6 +352,7 @@
else
+ keytemp = 0 call EOS_Omni_press(eos_handle,keytemp,GRHydro_eos_rf_prec,n,& rho(i,j,k),eps(i,j,k),xtemp,xye,press(i,j,k),keyerr,anyerr) call EOS_Omni_EpsFromPress(eos_handle,keytemp,GRHydro_eos_rf_prec,n,& @@ -396,6 +399,7 @@
else
+ keytemp = 0 call EOS_Omni_press(eos_handle,keytemp,GRHydro_eos_rf_prec,n,& rho_p(i,j,k),eps_p(i,j,k),xtemp,xye,press_p(i,j,k),keyerr,anyerr) call EOS_Omni_EpsFromPress(eos_handle,keytemp,GRHydro_eos_rf_prec,n,& @@ -444,6 +448,7 @@
else
+ keytemp = 0 call EOS_Omni_press(eos_handle,keytemp,GRHydro_eos_rf_prec,n,& rho_p_p(i,j,k),eps_p_p(i,j,k),xtemp,xye,press_p_p(i,j,k),keyerr,anyerr) call EOS_Omni_EpsFromPress(eos_handle,keytemp,GRHydro_eos_rf_prec,n,& @@ -464,6 +469,7 @@ end do end do end do +!$OMP END PARALLEL DO
write(*,*) " GRHydro_InitialAtmosphereReset" !!$ call GRHydro_BoundariesM(CCTK_PASS_FTOF)