You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Merge branch 'jgfouca/refactor_ekat_build' into next (PR #7634)
Refactor EKAT/Kokkos integration with E3SM
Change list:
1) Fix DEBUG propagation to EKAT build, this will fix CI
2) Add new setting KOKKOS_USE_EKAT_MACH_FILE to E3SM cmake macros. This
will allow machines to opt-in to using an EKAT machine file to configure
kokkos. This should hopefully reduce duplication and tedium of Kokkos
cmake configuration.
3) Make several machine take advantage of this feature.
4) Make eamxx standalone use the ekat machine files where possible
5) Remove unused EKAT_DISABLE_WORKSPACE_SHARING
6) Allow users to turn on kokkos view bounds checking via the env variable E3SM_ENABLE_KOKKOS_BOUNDS_CHECKING
7) ALWAYS turn off openmp for non-threaded cases
Guide to configuring Kokkos/EKAT:
1) If the machine/compiler macro does nothing, it will use the universal
Kokkos settings (Serial + (OpenMP IF compile_threaded).
2) The macro can manually set configuration by setting KOKKOS_OPTIONS.
3) The macro can just follow EKAT machine files by setting KOKKOS_USE_EKAT_MACH_FILE to TRUE.
This only works if ekat/cmake/machine-files has a file ${MACH}.cmake.
[BFB]
0 commit comments