@@ -20,10 +20,10 @@ module m_muscl
2020 s_finalize_muscl_module
2121
2222 integer :: v_size
23- !$acc declare create( v_size)
23+ $:GPU_DECLARE(create = ' [ v_size] ' )
2424
2525 type(int_bounds_info) :: is1_muscl, is2_muscl, is3_muscl
26- !$acc declare create( is1_muscl, is2_muscl, is3_muscl)
26+ $:GPU_DECLARE(create = ' [ is1_muscl,is2_muscl,is3_muscl] ' )
2727
2828 !> @name The cell- average variables that will be MUSCL- reconstructed. Formerly, they
2929 !! are stored in v_vf. However, they are transferred to v_rs_wsL and v_rs_wsR
@@ -35,7 +35,7 @@ module m_muscl
3535 !> @{
3636 real (wp), allocatable, dimension (:, :, :, :) :: v_rs_ws_x, v_rs_ws_y, v_rs_ws_z
3737 !> @}
38- !$acc declare create ( v_rs_ws_x, v_rs_ws_y, v_rs_ws_z)
38+ $:GPU_DECLARE(create = ' [ v_rs_ws_x,v_rs_ws_y,v_rs_ws_z] ' )
3939
4040contains
4141
@@ -109,15 +109,15 @@ contains
109109 is2_muscl = is2_muscl_d
110110 is3_muscl = is3_muscl_d
111111
112- !$acc update device( is1_muscl, is2_muscl, is3_muscl)
112+ $:GPU_UPDATE(device = ' [ is1_muscl,is2_muscl,is3_muscl] ' )
113113
114114 if (muscl_order /= 1 ) then
115115 call s_initialize_muscl(v_vf, muscl_dir)
116116 end if
117117
118118 if (muscl_order == 1 ) then
119119 if (muscl_dir == 1 ) then
120- !$acc parallel loop collapse( 4 ) default(present )
120+ $:GPU_PARALLEL_LOOP(collapse = 4 )
121121 do i = 1 , ubound (v_vf, 1 )
122122 do l = is3_muscl%beg, is3_muscl%end
123123 do k = is2_muscl%beg, is2_muscl%end
@@ -129,7 +129,7 @@ contains
129129 end do
130130 end do
131131 else if (muscl_dir == 2 ) then
132- !$acc parallel loop collapse( 4 ) default(present )
132+ $:GPU_PARALLEL_LOOP(collapse = 4 )
133133 do i = 1 , ubound (v_vf, 1 )
134134 do l = is3_muscl%beg, is3_muscl%end
135135 do k = is2_muscl%beg, is2_muscl%end
@@ -141,7 +141,7 @@ contains
141141 end do
142142 end do
143143 else if (muscl_dir == 3 ) then
144- !$acc parallel loop collapse( 4 ) default(present )
144+ $:GPU_PARALLEL_LOOP(collapse = 4 )
145145 do i = 1 , ubound (v_vf, 1 )
146146 do l = is3_muscl%beg, is3_muscl%end
147147 do k = is2_muscl%beg, is2_muscl%end
@@ -158,7 +158,7 @@ contains
158158 ! MUSCL Reconstruction
159159 #:for MUSCL_DIR, XYZ in [(1 , ' x' ), (2 , ' y' ), (3 , ' z' )]
160160 if (muscl_dir == ${MUSCL_DIR}$) then
161- !$acc parallel loop gang collapse( 4 ) default(present) private( slopeL, slopeR, slope)
161+ $:GPU_PARALLEL_LOOP(collapse = 4 , private= ' [ slopeL,slopeR,slope] ' )
162162 do l = is3_muscl%beg, is3_muscl%end
163163 do k = is2_muscl%beg, is2_muscl%end
164164 do j = is1_muscl%beg, is1_muscl%end
@@ -208,7 +208,6 @@ contains
208208 end do
209209 end do
210210 end do
211- !$acc end parallel loop
212211 end if
213212 #:endfor
214213 end if
@@ -239,7 +238,7 @@ contains
239238 #:for MUSCL_DIR, XYZ in [(1 , ' x' ), (2 , ' y' ), (3 , ' z' )]
240239 if (muscl_dir == ${MUSCL_DIR}$) then
241240
242- !$acc parallel loop collapse( 3 ) gang vector default(present) private( aCL, aC, aCR, aTHINC, moncon, sign, qmin, qmax)
241+ $:GPU_PARALLEL_LOOP(collapse = 3 , private= ' [ aCL,aC,aCR,aTHINC,moncon,sign,qmin,qmax] ' )
243242 do l = is3_muscl%beg, is3_muscl%end
244243 do k = is2_muscl%beg, is2_muscl%end
245244 do j = is1_muscl%beg, is1_muscl%end
@@ -310,10 +309,10 @@ contains
310309 ! as to reshape the inputted data in the coordinate direction of
311310 ! the muscl reconstruction
312311 v_size = ubound (v_vf, 1 )
313- !$acc update device( v_size)
312+ $:GPU_UPDATE(device = ' [ v_size] ' )
314313
315314 if (muscl_dir == 1 ) then
316- !$acc parallel loop collapse( 4 ) gang vector default(present )
315+ $:GPU_PARALLEL_LOOP(collapse = 4 )
317316 do j = 1 , v_size
318317 do q = is3_muscl%beg, is3_muscl%end
319318 do l = is2_muscl%beg, is2_muscl%end
@@ -323,14 +322,13 @@ contains
323322 end do
324323 end do
325324 end do
326- !$acc end parallel loop
327325 end if
328326
329327 ! Reshaping/ Projecting onto Characteristic Fields in y- direction
330328 if (n == 0 ) return
331329
332330 if (muscl_dir == 2 ) then
333- !$acc parallel loop collapse( 4 ) gang vector default(present )
331+ $:GPU_PARALLEL_LOOP(collapse = 4 )
334332 do j = 1 , v_size
335333 do q = is3_muscl%beg, is3_muscl%end
336334 do l = is2_muscl%beg, is2_muscl%end
@@ -340,13 +338,12 @@ contains
340338 end do
341339 end do
342340 end do
343- !$acc end parallel loop
344341 end if
345342
346343 ! Reshaping/ Projecting onto Characteristic Fields in z- direction
347344 if (p == 0 ) return
348345 if (muscl_dir == 3 ) then
349- !$acc parallel loop collapse( 4 ) gang vector default(present )
346+ $:GPU_PARALLEL_LOOP(collapse = 4 )
350347 do j = 1 , v_size
351348 do q = is3_muscl%beg, is3_muscl%end
352349 do l = is2_muscl%beg, is2_muscl%end
@@ -356,7 +353,6 @@ contains
356353 end do
357354 end do
358355 end do
359- !$acc end parallel loop
360356 end if
361357
362358 end subroutine s_initialize_muscl
0 commit comments