Closed brian-oneill closed 1 month ago
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/fmt/bundled/core.h(1727): error: static assertion failed with "Cannot format an argument. To make type T formattable provide a formatter<T> specialization: https://fmt.dev/latest/api.html#udt"
detected during:
instantiation of "auto fmt::v8::detail::make_arg<IS_PACKED,Context,<unnamed>,T,<unnamed>>(T &&)->fmt::v8::detail::value<Context> [with IS_PACKED=true, Context=fmt::v8::format_context, <unnamed>=fmt::v8::detail::type::custom_type, T=OMEGA::HostArray1DReal &, <unnamed>=0]"
(1856): here
instantiation of "fmt::v8::format_arg_store<Context, Args...>::format_arg_store(T &&...) [with Context=fmt::v8::format_context, Args=<OMEGA::HostArray1DReal>, T=<OMEGA::HostArray1DReal &>]"
(1872): here
instantiation of "auto fmt::v8::make_format_args(Args &&...)->fmt::v8::format_arg_store<Context, fmt::v8::remove_cvref_t<Args>...> [with Context=fmt::v8::format_context, Args=<OMEGA::HostArray1DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/logger.h(370): here
instantiation of "void spdlog::logger::log_(spdlog::source_loc, spdlog::level::level_enum, spdlog::string_view_t, Args &&...) [with Args=<OMEGA::HostArray1DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/logger.h(90): here
instantiation of "void spdlog::logger::log(spdlog::source_loc, spdlog::level::level_enum, spdlog::format_string_t<Args...>, Args &&...) [with Args=<OMEGA::HostArray1DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/logger.h(96): here
instantiation of "void spdlog::logger::log(spdlog::level::level_enum, spdlog::format_string_t<Args...>, Args &&...) [with Args=<OMEGA::HostArray1DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/logger.h(158): here
instantiation of "void spdlog::logger::info(spdlog::format_string_t<Args...>, Args &&...) [with Args=<OMEGA::HostArray1DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/spdlog.h(157): here
instantiation of "void spdlog::info(spdlog::format_string_t<Args...>, Args &&...) [with Args=<OMEGA::HostArray1DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/components/omega/test/infra/LoggingTest.cpp(150): here
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/fmt/bundled/core.h(1727): error: static assertion failed with "Cannot format an argument. To make type T formattable provide a formatter<T> specialization: https://fmt.dev/latest/api.html#udt"
detected during:
instantiation of "auto fmt::v8::detail::make_arg<IS_PACKED,Context,<unnamed>,T,<unnamed>>(T &&)->fmt::v8::detail::value<Context> [with IS_PACKED=true, Context=fmt::v8::format_context, <unnamed>=fmt::v8::detail::type::custom_type, T=OMEGA::HostArray2DReal &, <unnamed>=0]"
(1856): here
instantiation of "fmt::v8::format_arg_store<Context, Args...>::format_arg_store(T &&...) [with Context=fmt::v8::format_context, Args=<OMEGA::HostArray2DReal>, T=<OMEGA::HostArray2DReal &>]"
(1872): here
instantiation of "auto fmt::v8::make_format_args(Args &&...)->fmt::v8::format_arg_store<Context, fmt::v8::remove_cvref_t<Args>...> [with Context=fmt::v8::format_context, Args=<OMEGA::HostArray2DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/logger.h(370): here
instantiation of "void spdlog::logger::log_(spdlog::source_loc, spdlog::level::level_enum, spdlog::string_view_t, Args &&...) [with Args=<OMEGA::HostArray2DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/logger.h(90): here
instantiation of "void spdlog::logger::log(spdlog::source_loc, spdlog::level::level_enum, spdlog::format_string_t<Args...>, Args &&...) [with Args=<OMEGA::HostArray2DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/logger.h(96): here
instantiation of "void spdlog::logger::log(spdlog::level::level_enum, spdlog::format_string_t<Args...>, Args &&...) [with Args=<OMEGA::HostArray2DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/logger.h(158): here
instantiation of "void spdlog::logger::info(spdlog::format_string_t<Args...>, Args &&...) [with Args=<OMEGA::HostArray2DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/externals/ekat/extern/spdlog/include/spdlog/spdlog.h(157): here
instantiation of "void spdlog::info(spdlog::format_string_t<Args...>, Args &&...) [with Args=<OMEGA::HostArray2DReal &>]"
/global/homes/b/boneill/proj_space/ykimFork/Omega/components/omega/test/infra/LoggingTest.cpp(172): here
2 errors detected in the compilation of "/global/homes/b/boneill/proj_space/ykimFork/Omega/components/omega/test/infra/LoggingTest.cpp".
make[2]: *** [test/CMakeFiles/testLogging.exe.dir/build.make:76: test/CMakeFiles/testLogging.exe.dir/infra/LoggingTest.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1850: test/CMakeFiles/testLogging.exe.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
@brian-oneill , thanks for letting me know. I will try it on pm-gpu.
I ran into the same issue on frontier using the crayomegagpu
compiler.
I also get this compile error with cray gpu on frontier. I'm not sure if this is the same error cited above, which is on LoggingTest.cpp
. This stops at testDataTypes.exe
:
...
[ 84%] Linking C executable testHalo.exe
[ 84%] Built target testHalo.exe
31 warnings generated when compiling for host.
[ 84%] Linking C executable testDataTypes.exe
[ 84%] Built target testDataTypes.exe
make: *** [Makefile:146: all] Error 2
``` CODE_DIR=omega-develop RUNDIR=241001_omega_gpu_dev mkdir /lustre/orion/cli115/scratch/mpetersen/runs/$RUNDIR cd !$ cd /ccs/home/mpetersen/repos/E3SM/${CODE_DIR} git submodule update --init --recursive externals/YAKL externals/ekat externals/scorpio cime cd /lustre/orion/cli115/scratch/mpetersen/runs/$RUNDIR module load cmake rm -rf build mkdir build cd build export PARMETIS_ROOT=/ccs/proj/cli115/software/polaris/frontier/spack/dev_polaris_0_4_0_crayclanggpu_mpich/var/spack/environments/dev_polaris_0_4_0_crayclanggpu_mpich/.spack-env/view cmake \ -DOMEGA_CIME_COMPILER=crayomegagpu \ -DOMEGA_BUILD_TYPE=Release \ -DOMEGA_CIME_MACHINE=frontier \ -DOMEGA_PARMETIS_ROOT=${PARMETIS_ROOT}\ -DOMEGA_BUILD_TEST=ON \ -Wno-dev \ -Wno-deprecated \ -S /ccs/home/mpetersen/repos/E3SM/${CODE_DIR}/components/omega -B . ./omega_build.sh # linking: cd test ln -isf ~/meshes/omega/O*nc . cp /ccs/home/mpetersen/repos/E3SM/${CODE_DIR}/components/omega/configs/Default.yml omega.yml salloc -A cli115 -J inter -t 2:00:00 -q debug -N 1 -p batch RUNDIR=241001_omega_gpu_dev cd /lustre/orion/cli115/scratch/mpetersen/runs/$RUNDIR/build ./omega_ctest.sh ```
Thanks, everyone, for reporting this issue. I was too naive in skipping tests on some machines/compilers. I have just created a new PR (https://github.com/E3SM-Project/Omega/pull/144) and hope this fixes the issue.
Fixed by #144
Looks like changes from #136 are causing compilation errors for nvidiagpu on pm-gpu. Haven't noticed issues on other platforms