Description:

Speaker: By Dr Joseph Schoonover, Fluid Numerics LLC

During this talk, we will share our experience with porting process for SELF-Fluids from multi-GPU CUDA-Fortran to multi-GPU HIPFort. The talk will cover the design principles and roadmap for SELF and the strategy to port from Nvidia-only platforms to AMD & Nvidia GPUs. We’ll discuss hurdles encountered along the way and considerations for developing multi-GPU accelerated applications in Fortran.

SELF is an object-oriented Fortran library that supports the implementation of Spectral Element Methods for solving partial differential equations. SELF-Fluids is an implementation of SELF that solves the compressible Navier Stokes equations on CPU only and GPU accelerated compute platforms using the Discontinuous Galerkin Spectral Element Method. The SELF API is designed based on the assumption that SEM developers and researchers need to be able to implement derivatives in 1-D and divergence, gradient, and curl in 2-D and 3-D on scalar, vector, and tensor functions using spectral collocation, continuous Galerkin, and discontinuous Galerkin spectral element methods. Additionally, as we enter the Exascale era, we are currently faced with a zoo of compute hardware that is available. Because of this, SELF routines provide support for GPU acceleration through AMD’s HIP and support for multi-core, multi-node, and multi-GPU platforms with MPI.

SELF and SELF-Fluids are publicly available online at https://github.com/fluidnumerics/self

Porting multi-GPU SELF-Fluids code to HIPFort, is part of the first PaCER Conference – P’con: A week where Pawsey continues setting the pace for exascale.

Start: Wednesday, 08 December 2021 @ 09:30

End: Wednesday, 08 December 2021 @ 11:30

Duration: 02:00

Timezone: Perth

Eligibility:
  • Open to all

Organiser: Pawsey Supercomputing Research Centre

Contact: training@pawsey.org.au

Host institution: Pawsey Supercomputing Research Centre

Keywords: GPUs, HipFort, supercomputer, supercomputing, Setonix

Event type:
  • Webinar
  • Conference

Cost Basis: Free to all

P’Con – Porting multi-GPU SELF-Fluids code to HIPFort https://dresa.org.au/events/p-con-porting-multi-gpu-self-fluids-code-to-hipfort Speaker: By Dr Joseph Schoonover, Fluid Numerics LLC During this talk, we will share our experience with porting process for SELF-Fluids from multi-GPU CUDA-Fortran to multi-GPU HIPFort. The talk will cover the design principles and roadmap for SELF and the strategy to port from Nvidia-only platforms to AMD & Nvidia GPUs. We’ll discuss hurdles encountered along the way and considerations for developing multi-GPU accelerated applications in Fortran. SELF is an object-oriented Fortran library that supports the implementation of Spectral Element Methods for solving partial differential equations. SELF-Fluids is an implementation of SELF that solves the compressible Navier Stokes equations on CPU only and GPU accelerated compute platforms using the Discontinuous Galerkin Spectral Element Method. The SELF API is designed based on the assumption that SEM developers and researchers need to be able to implement derivatives in 1-D and divergence, gradient, and curl in 2-D and 3-D on scalar, vector, and tensor functions using spectral collocation, continuous Galerkin, and discontinuous Galerkin spectral element methods. Additionally, as we enter the Exascale era, we are currently faced with a zoo of compute hardware that is available. Because of this, SELF routines provide support for GPU acceleration through AMD’s HIP and support for multi-core, multi-node, and multi-GPU platforms with MPI. SELF and SELF-Fluids are publicly available online at https://github.com/fluidnumerics/self Porting multi-GPU SELF-Fluids code to HIPFort, is part of the first PaCER Conference – P’con: A week where Pawsey continues setting the pace for exascale. 2021-12-08 09:30:00 UTC 2021-12-08 11:30:00 UTC Pawsey Supercomputing Research Centre Pawsey Supercomputing Research Centre training@pawsey.org.au [] [] webinarconference open_to_all GPUsHipFortsupercomputersupercomputingSetonix