From cc26ebec4e0e1dd0a15286706fbe0230da19d7d0 Mon Sep 17 00:00:00 2001 From: Arseniy Obolenskiy Date: Sun, 7 Jun 2026 12:45:11 +0200 Subject: [PATCH 1/3] Configure Open MPI shmem defaults on macOS Open MPI 5 can warn while probing mmap backing files under macOS TMPDIR paths, so default to the POSIX shmem component before MPI_Init unless the user already configured it --- modules/runners/src/runners.cpp | 3 ++- modules/util/include/util.hpp | 1 + modules/util/src/util.cpp | 12 ++++++++++-- tasks/common/runners/performance.cpp | 1 + 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/modules/runners/src/runners.cpp b/modules/runners/src/runners.cpp index 5f950455..3d20fb2b 100644 --- a/modules/runners/src/runners.cpp +++ b/modules/runners/src/runners.cpp @@ -1,7 +1,6 @@ #include "runners/include/runners.hpp" #include -#include #include #include @@ -10,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -140,6 +140,7 @@ int RunAllTestsSafely() { } // namespace int Init(int argc, char **argv) { + ppc::util::ConfigureMpiEnvironment(); const int init_res = MPI_Init(&argc, &argv); if (init_res != MPI_SUCCESS) { std::cerr << std::format("[ ERROR ] MPI_Init failed with code {}", init_res) << '\n'; diff --git a/modules/util/include/util.hpp b/modules/util/include/util.hpp index 91234455..fd5b2aa7 100644 --- a/modules/util/include/util.hpp +++ b/modules/util/include/util.hpp @@ -95,6 +95,7 @@ double GetTaskMaxTime(); double GetPerfMaxTime(); double GetTimeMPI(); int GetMPIRank(); +void ConfigureMpiEnvironment(); void SynchronizeMpiRanks(); template diff --git a/modules/util/src/util.cpp b/modules/util/src/util.cpp index 633eac97..c60c4591 100644 --- a/modules/util/src/util.cpp +++ b/modules/util/src/util.cpp @@ -1,11 +1,10 @@ #include "util/include/util.hpp" -#include - #include #include #include #include +#include #include namespace { @@ -68,6 +67,15 @@ bool ppc::util::IsUnderMpirun() { }); } +void ppc::util::ConfigureMpiEnvironment() { +#ifdef __APPLE__ + // Open MPI 5 can emit mmap backing-file probe warnings for macOS TMPDIR paths. + if (!env::get("OMPI_MCA_shmem").has_value()) { + env::detail::set_environment_variable("OMPI_MCA_shmem", "posix"); + } +#endif +} + void ppc::util::SynchronizeMpiRanks() { int initialized = 0; if (MPI_Initialized(&initialized) != MPI_SUCCESS || initialized == 0) { diff --git a/tasks/common/runners/performance.cpp b/tasks/common/runners/performance.cpp index 1f8101bc..9fe39268 100644 --- a/tasks/common/runners/performance.cpp +++ b/tasks/common/runners/performance.cpp @@ -177,6 +177,7 @@ int SynchronizeStatus(int local_status, std::string_view stage) { } int RunPerformanceMain(int argc, char **argv) { + ppc::util::ConfigureMpiEnvironment(); const int init_res = MPI_Init(&argc, &argv); if (init_res != MPI_SUCCESS) { std::cerr << "[ ERROR ] MPI_Init failed with code " << init_res << '\n'; From dfb86a7de7847383efc464820e4e8cc5030ad0ae Mon Sep 17 00:00:00 2001 From: Arseniy Obolenskiy Date: Sun, 7 Jun 2026 13:01:31 +0200 Subject: [PATCH 2/3] fmt --- modules/runners/src/runners.cpp | 2 +- modules/util/src/util.cpp | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/runners/src/runners.cpp b/modules/runners/src/runners.cpp index 3d20fb2b..b62b61b3 100644 --- a/modules/runners/src/runners.cpp +++ b/modules/runners/src/runners.cpp @@ -1,6 +1,7 @@ #include "runners/include/runners.hpp" #include +#include #include #include @@ -9,7 +10,6 @@ #include #include #include -#include #include #include #include diff --git a/modules/util/src/util.cpp b/modules/util/src/util.cpp index c60c4591..d29c9277 100644 --- a/modules/util/src/util.cpp +++ b/modules/util/src/util.cpp @@ -1,10 +1,11 @@ #include "util/include/util.hpp" +#include + #include #include #include #include -#include #include namespace { From a50c266975e1bf362dd30e4fb9b1466424e30774 Mon Sep 17 00:00:00 2001 From: Arseniy Obolenskiy Date: Sun, 7 Jun 2026 13:17:22 +0200 Subject: [PATCH 3/3] fmt 2 --- .clang-format | 17 +++++++++++++++++ modules/runners/src/runners.cpp | 1 + modules/util/include/func_test_util.hpp | 1 + modules/util/include/perf_test_util.hpp | 3 ++- tasks/common/runners/performance.cpp | 3 ++- .../processes/t1/tests/functional/main.cpp | 1 + .../processes/t2/tests/functional/main.cpp | 1 + .../processes/t3/tests/functional/main.cpp | 1 + tasks/example/threads/tests/functional/main.cpp | 1 + 9 files changed, 27 insertions(+), 2 deletions(-) diff --git a/.clang-format b/.clang-format index 98e77c74..965ba84c 100644 --- a/.clang-format +++ b/.clang-format @@ -6,6 +6,23 @@ UseTab: Never AllowShortFunctionsOnASingleLine: Empty IndentPPDirectives: AfterHash SortIncludes: true +IncludeCategories: + - Regex: '^' + Priority: 1 + SortPriority: 0 + CaseSensitive: false + - Regex: '^<.*\.h>' + Priority: 2 + SortPriority: 0 + CaseSensitive: false + - Regex: '^<.*' + Priority: 3 + SortPriority: 0 + CaseSensitive: false + - Regex: '.*' + Priority: 4 + SortPriority: 0 + CaseSensitive: false FixNamespaceComments: true InsertBraces: true QualifierAlignment: Left diff --git a/modules/runners/src/runners.cpp b/modules/runners/src/runners.cpp index b62b61b3..598fef0f 100644 --- a/modules/runners/src/runners.cpp +++ b/modules/runners/src/runners.cpp @@ -1,6 +1,7 @@ #include "runners/include/runners.hpp" #include + #include #include diff --git a/modules/util/include/func_test_util.hpp b/modules/util/include/func_test_util.hpp index cc4965f4..afa8be5a 100644 --- a/modules/util/include/func_test_util.hpp +++ b/modules/util/include/func_test_util.hpp @@ -1,6 +1,7 @@ #pragma once #include + #include #include diff --git a/modules/util/include/perf_test_util.hpp b/modules/util/include/perf_test_util.hpp index bab6121a..56332901 100644 --- a/modules/util/include/perf_test_util.hpp +++ b/modules/util/include/perf_test_util.hpp @@ -1,7 +1,8 @@ #pragma once -#include #include + +#include #include #include #include diff --git a/tasks/common/runners/performance.cpp b/tasks/common/runners/performance.cpp index 83a38b09..20da6520 100644 --- a/tasks/common/runners/performance.cpp +++ b/tasks/common/runners/performance.cpp @@ -1,6 +1,7 @@ +#include + #include #include -#include #include #include diff --git a/tasks/example/processes/t1/tests/functional/main.cpp b/tasks/example/processes/t1/tests/functional/main.cpp index 50b8c77d..adf69f76 100644 --- a/tasks/example/processes/t1/tests/functional/main.cpp +++ b/tasks/example/processes/t1/tests/functional/main.cpp @@ -1,4 +1,5 @@ #include + #include #include diff --git a/tasks/example/processes/t2/tests/functional/main.cpp b/tasks/example/processes/t2/tests/functional/main.cpp index 6e60e0f5..146b11f5 100644 --- a/tasks/example/processes/t2/tests/functional/main.cpp +++ b/tasks/example/processes/t2/tests/functional/main.cpp @@ -1,4 +1,5 @@ #include + #include #include diff --git a/tasks/example/processes/t3/tests/functional/main.cpp b/tasks/example/processes/t3/tests/functional/main.cpp index 57bd3ebc..f727c55c 100644 --- a/tasks/example/processes/t3/tests/functional/main.cpp +++ b/tasks/example/processes/t3/tests/functional/main.cpp @@ -1,4 +1,5 @@ #include + #include #include diff --git a/tasks/example/threads/tests/functional/main.cpp b/tasks/example/threads/tests/functional/main.cpp index ff70a999..1b4bda31 100644 --- a/tasks/example/threads/tests/functional/main.cpp +++ b/tasks/example/threads/tests/functional/main.cpp @@ -1,4 +1,5 @@ #include + #include #include