To foster GPU computing, we show sample codes of hydrodynamic simulations in this repositry.
| Problem | Language | parallel | Name |
|---|---|---|---|
| 2D Kelvin-Helmholtz Instability | Fortran | OpenMP(CPU) | KHf90openmp |
| 2D Kelvin-Helmholtz Instability | Fortran | MPI, OpenMP(CPU) | KHf90openmp_mpi |
| 2D Kelvin-Helmholtz Instability | Fortran | OpenACC | KHf90openacc |
| 2D Kelvin-Helmholtz Instability | Fortran | MPI, OpenACC | KHf90openacc_mpi |
| 3D upwind advection | C++ | OpenMP(GPU) | ADcppopenmp |
| 3D upwind advection | C++ | OpenACC | ADcppopenacc |
| 3D magneto-hydrodynamic deacaying turbulence | Fortran | OpenACC | DTf90openacc |
| 3D magneto-hydrodynamic deacaying turbulence | Fortran | MPI, OpenACC | DTf90openacc_mpi |
| 3D magneto-hydrodynamic deacaying turbulence | C++ | OpenMP(GPU) | DTcppopenmp |
| 3D magneto-hydrodynamic deacaying turbulence | C++ | MPI, OpenMP(GPU) | DTcppopenmp_mpi |
The code for GPU computaiton is prepared in KHf90openacc. To compare the performance with its CPU version, we have also prepared openmp version in KHf90openmp. MPI is available in KHf90openacc_mpi and KHf90openmp_mpi.
The code for GPU computaiton is prepared in DTf90openacc. MPI is available in DTf90openacc_acc.
The code for GPU computaiton is prepared in ADcppopenmp and ADcppopenacc.
The code for GPU computaiton is prepared in DTcppopenmp. MPI is available in DTcppopenmp_mpi.