In this session, we will present an OpenACC to OpenMP migration tool that can be used to prepare applications for ALCF’s upcoming Aurora supercomputer. OpenACC and OpenMP are two language programming standards for parallel computing that take advantage of hardware accelerators. Both languages rely on compiler directives and additional functions to accelerate the applications. Despite their similarities, there are fundamental differences between the two, not only related to the semantics but also on the hardware supported.
The migraton tool scans the application source-code (either in C or Fortran) for OpenACC-related constructs and suggests OpenMP constructs that are semantically equivalent whenever possible.