From 155ec3c142e54ac65ce080e953715b8f5d6ece36 Mon Sep 17 00:00:00 2001 From: dqwu Date: Fri, 19 Jul 2024 17:10:21 -0500 Subject: [PATCH 1/3] Add ums and ums002 to load libunwind 1.6.2 After recent Frontier maintenance, ums/default and ums002/default are required to load libunwind/1.6.2. --- cime_config/machines/config_machines.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cime_config/machines/config_machines.xml b/cime_config/machines/config_machines.xml index c04dff5976cd..3617bb88f9ec 100644 --- a/cime_config/machines/config_machines.xml +++ b/cime_config/machines/config_machines.xml @@ -1437,6 +1437,8 @@ PrgEnv-cray craype-accel-amd-gfx90a rocm/5.4.0 + ums/default + ums002/default libunwind/1.6.2 From 555aa19b0967bb2dd6a570f8bf74aadaa6eb8f67 Mon Sep 17 00:00:00 2001 From: dqwu Date: Fri, 19 Jul 2024 17:12:27 -0500 Subject: [PATCH 2/3] Add to scream_scorpio_types.hpp to use std::int64_t This fixes a known build error after recent Frontier maintenance: no type named 'int64_t' in namespace 'std'; did you mean simply 'int64_t'? --- components/eamxx/src/share/io/scream_scorpio_types.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/components/eamxx/src/share/io/scream_scorpio_types.hpp b/components/eamxx/src/share/io/scream_scorpio_types.hpp index 645b1b26937b..3b16cebc06c8 100644 --- a/components/eamxx/src/share/io/scream_scorpio_types.hpp +++ b/components/eamxx/src/share/io/scream_scorpio_types.hpp @@ -5,6 +5,7 @@ #include #include #include +#include namespace scream { namespace scorpio { From 805ab1f68d5dd2599a1eaf90e16c26fc8cf47d08 Mon Sep 17 00:00:00 2001 From: dqwu Date: Fri, 19 Jul 2024 17:16:28 -0500 Subject: [PATCH 3/3] Explicitly add gcc/12.2.0 lib path to CMAKE_EXE_LINKER_FLAGS This is a simple workaround to fix scream linking errors after recent Frontier maintenance before we find better solutions. --- .../cmake_macros/crayclang-scream_frontier-scream-gpu.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cime_config/machines/cmake_macros/crayclang-scream_frontier-scream-gpu.cmake b/cime_config/machines/cmake_macros/crayclang-scream_frontier-scream-gpu.cmake index afcca8f479e5..cc90b369244a 100644 --- a/cime_config/machines/cmake_macros/crayclang-scream_frontier-scream-gpu.cmake +++ b/cime_config/machines/cmake_macros/crayclang-scream_frontier-scream-gpu.cmake @@ -19,7 +19,7 @@ endif() string(APPEND CMAKE_Fortran_FLAGS " -hipa0 -hzero -f free") -string(APPEND CMAKE_EXE_LINKER_FLAGS " -L$ENV{ROCM_PATH}/lib -lamdhip64") +string(APPEND CMAKE_EXE_LINKER_FLAGS " -L$ENV{ROCM_PATH}/lib -lamdhip64 -L/opt/gcc/12.2.0/snos/lib64") string(APPEND CMAKE_CXX_FLAGS " -I$ENV{ROCM_PATH}/include") # Crusher: this resolves a crash in mct in docn init