- Initial Riem_Solver_C Mini-App Port Notes
- 1. Sim1_Solver inlining
- 2. Filling bet
- 3. Lower-dimensional temporaries (bet)
- 4. Temporaries across computations
- 5. Numpy backend has assertion error with multiple intervals + PARALLEL execution
- 6. Need to allow empty computations due to compile-time ifs
Visible to members of this folder
1. Sim1_Solver inlining
do k=1,km
do j=js1,je1
do i=is1, ie1
...
enddo
enddo
enddo
!$ACC end kernels
if ( a_imp > 0.5 ) then
call SIM1_solver(dt, is1, ie1, js1, je1, isd, ied, jsd, jed, km, rdgas, gama, gm2, cp2, akap, pe2, &
dm, pm2, pem, w2, dz2, pt, ws, p_fac)
endif
!$ACC kernels present(ms,dt,km,hs,gz,pef,pe2,pem,dz2)
do k=2,km+1
do j=js1,je1
do i=is1, ie1
...
enddo
enddo
enddo
if __INLINED(A_IMP < 0.5)
2. Filling bet
with computation(FORWARD):
with interval(2, 1):
if __INLINED(A_IMP < 0.5):
bet = bb[0, 0, -1]
# Line 265
with computation(PARALLEL), interval(2, -1):
if __INLINED(A_IMP < 0.5):
gam = g_rat[0, 0, -1] / bet[0, 0, 0]
bet = bb - gam
3. Lower-dimensional temporaries (bet)
4. Temporaries across computations
5. Numpy backend has assertion error with multiple intervals + PARALLEL execution
File "/Users/johannd/Code/gt4py/src/gt4py/backend/numpy_backend.py", line 124, in make_stage_source
assert sorted(regions, reverse=iteration_order == gt_ir.IterationOrder.BACKWARD) == regions
AssertionError
6. Need to allow empty computations due to compile-time ifs