Polaris: a testing framework for the next-generation ocean model OMEGA
The next generation ocean model component for the Energy Exascale Earth System Model (E3SM), OMEGA, is currently under development to enable optimal performance for GPUs. A key component of OMEGA development is benchmarking against the current generation ocean model component, MPAS-Ocean, to ensure that the code is ported correctly from Fortran to C++. We are developing a new Python package, Polaris, to allow us to set-up, build and run both code bases on identical tests (i.e., with a common mesh, initial conditions, and forcing). However, we also go beyond benchmarking to build out more verification, validation, and analysis capabilities to increase confidence in the model. Polaris development activities are tightly coordinated with OMEGA development to achieve greater code coverage than the previous testing framework and build up test suites for continuous integration. Here, we highlight our approach to the testing framework as well as recent successes in ocean model verification and validation.