Examples of parallel runtimes from native Fortran syntax. direct MPI operations or Fortran Coarrays are in separate repos.
Examples include:
- do concurrent: including Fortran 202x "reduce" syntax supported by NVIDIA HPC SDK and Intel oneAPI
- OpenACC: directive for Fortran
- openmp: OpenMP threading examples
macOS users may need to install OpenMP library.
Not every compiler supports OpenACC. For example, Intel oneAPI does not support OpenACC, but provides a migration tool from OpenACC to OpenMP.
NVIDIA HPC SDK generally shows a clear (say 10s of percent) runtime improvement with OpenACC on these example. Other compilers like GCC might show little advantage.