Currently there are many empty OMPGPU regions in develop which we need to fill in. When merging the optimised branch, we prioritised OpenACC offloading, and now that that is relatively mature, we should work to bring OpenMP-offload back in line.
The following files need completing:
[x] external/trans_end.F90
[x] external/setup_trans.F90
[x] external/gpnorm_trans_gpu.F90
[ ] internal/trgtol_mod.F90
[ ] internal/trmtol_pack_unpack.F90
[ ] internal/trmtol_mod.F90
[ ] internal/trltom_pack_unpack.F90
[ ] internal/fsc_mod.F90
[ ] internal/trltog_mod.F90
[ ] internal/prfi1b_mod.F90
[ ] internal/updspb_mod.F90
[ ] internal/ledir_mod.F90
[ ] internal/spnsde_mod.F90
[ ] internal/trltom_mod.F90
[ ] internal/tpm_hicfft.F90
[ ] internal/vdtuv_mod.F90
[ ] internal/leinv_mod.F90
[ ] internal/prepsnm_mod.F90
[ ] internal/ltinv_mod.F90
[ ] internal/ftinv_mod.F90
[ ] internal/updsp_mod.F90
[ ] internal/ltdir_mod.F90
[ ] internal/ftdir_mod.F90
[ ] internal/uvtvd_mod.F90
In addition, the memory pool allocator needs to work with the OpenMP runtime as well as OpenACC:
Currently there are many empty
OMPGPU
regions in develop which we need to fill in. When merging the optimised branch, we prioritised OpenACC offloading, and now that that is relatively mature, we should work to bring OpenMP-offload back in line.The following files need completing:
external/trans_end.F90
external/setup_trans.F90
external/gpnorm_trans_gpu.F90
internal/trgtol_mod.F90
internal/trmtol_pack_unpack.F90
internal/trmtol_mod.F90
internal/trltom_pack_unpack.F90
internal/fsc_mod.F90
internal/trltog_mod.F90
internal/prfi1b_mod.F90
internal/updspb_mod.F90
internal/ledir_mod.F90
internal/spnsde_mod.F90
internal/trltom_mod.F90
internal/tpm_hicfft.F90
internal/vdtuv_mod.F90
internal/leinv_mod.F90
internal/prepsnm_mod.F90
internal/ltinv_mod.F90
internal/ftinv_mod.F90
internal/updsp_mod.F90
internal/ltdir_mod.F90
internal/ftdir_mod.F90
internal/uvtvd_mod.F90
In addition, the memory pool allocator needs to work with the OpenMP runtime as well as OpenACC:
algor/growing_allocator_mod.F90
algor/buffered_allocator_mod.F90