Research Article

Performance of a Code Migration for the Simulation of Supersonic Ejector Flow to SMP, MIC, and GPU Using OpenMP, OpenMP+LEO, and OpenACC Directives

Listing 10

Format of the OpenACC directives used to parallelize the loops.
!$acc data &
!$acc copyin(deltae,a_x,b_x,K_x)  &
!acc local(DF1Dn,DF2Dn,DF3Dn,DF4Dn)  &
!WHILE OF TIME
!$acc kernels
!$acc loop independent
DO j=2,(nj-1)
!$acc loop independent
DO i=2,(ni-1)
END DO
END DO
!$acc end kernels
IF  (MOD(k,it_display) == 0) THEN
!$acc update host(U,V,ro,P,T,M,ET) async
CALL LAYER_WRITE(DBLE(k))
END IF
END DO ! end of while in time
!END OF WHILE
!$acc end data