From 4723d88501ccf22f065a6d11ebf7e13e12a6f520 Mon Sep 17 00:00:00 2001 From: Arkadiusz Szczepkowicz Date: Mon, 30 Sep 2024 16:00:27 +0200 Subject: [PATCH 01/18] #2286: Remove gcc-8 references --- ci/docker/ubuntu-gnu-docs.dockerfile | 2 +- docker-compose.yml | 8 ++++---- docs/md/building.md | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ci/docker/ubuntu-gnu-docs.dockerfile b/ci/docker/ubuntu-gnu-docs.dockerfile index 07edbaba6a..1a393d7f9c 100644 --- a/ci/docker/ubuntu-gnu-docs.dockerfile +++ b/ci/docker/ubuntu-gnu-docs.dockerfile @@ -3,7 +3,7 @@ ARG ubuntu=22.04 FROM ${arch}/ubuntu:${ubuntu} as base ARG proxy="" -ARG compiler=gcc-8 +ARG compiler=gcc-9 ARG token ENV https_proxy=${proxy} \ diff --git a/docker-compose.yml b/docker-compose.yml index b4916434ae..c00e1aed43 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -10,7 +10,7 @@ # Variables: # ARCH={amd64, arm64v8, ...} # COMPILER_TYPE={gnu, clang, intel, nvidia} -# COMPILER={gcc-8, gcc-9, gcc-10, +# COMPILER={gcc-9, gcc-10, # clang-8, clang-9, clang-10, # icpc, icpx, # nvcc-11, nvcc-11.2} @@ -55,11 +55,11 @@ # $ docker compose run ubuntu-cpp-interactive # # /vt/ci/build_cpp.sh /vt /build # -# For a non-interactive build with gcc-8, since gnu is the default compiler +# For a non-interactive build with gcc-9, since gnu is the default compiler # type, one may do the following: # -# $ COMPILER=gcc-8 docker compose pull ubuntu-cpp -# $ COMPILER=gcc-8 docker compose run ubuntu-cpp +# $ COMPILER=gcc-9 docker compose pull ubuntu-cpp +# $ COMPILER=gcc-9 docker compose run ubuntu-cpp # # Volume will be created automatically for each combination of parameters. diff --git a/docs/md/building.md b/docs/md/building.md index e86466d0e3..8add1b9429 100644 --- a/docs/md/building.md +++ b/docs/md/building.md @@ -139,7 +139,7 @@ which `docker compose` will read. # Variables: # ARCH={amd64, arm64v8, ...} # COMPILER_TYPE={gnu, clang, intel, nvidia} -# COMPILER={gcc-8, gcc-9, gcc-10, +# COMPILER={gcc-9, gcc-10, # clang-8, clang-9, clang-10, # icpc, icpx, # nvcc-11, nvcc-11.2} From 4a493bd7c0f675c03f315a96e87aef63b54f2c48 Mon Sep 17 00:00:00 2001 From: Arkadiusz Szczepkowicz Date: Mon, 30 Sep 2024 16:00:48 +0200 Subject: [PATCH 02/18] #2286: Remove std::filesystem workaround for gcc-8 --- cmake/link_vt.cmake | 7 ------- 1 file changed, 7 deletions(-) diff --git a/cmake/link_vt.cmake b/cmake/link_vt.cmake index 52128a747f..cc3c9ad340 100644 --- a/cmake/link_vt.cmake +++ b/cmake/link_vt.cmake @@ -255,11 +255,4 @@ function(link_target_with_vt) if (vt_ubsan_enabled) target_link_libraries(${ARG_TARGET} PUBLIC ${ARG_BUILD_TYPE} -fsanitize=undefined) endif() - - # Enable additional flag for GCC-8 to link std::filesystem - if (${CMAKE_CXX_COMPILER_ID} MATCHES "GNU") - if (NOT (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 9)) - target_link_libraries(${ARG_TARGET} PUBLIC ${ARG_BUILD_TYPE} -lstdc++fs) - endif () - endif () endfunction() From ac79d8338178b5f301f9bfe1ab1c68762f6a960d Mon Sep 17 00:00:00 2001 From: Arkadiusz Szczepkowicz Date: Mon, 30 Sep 2024 16:08:33 +0200 Subject: [PATCH 03/18] #2286: Replace old gcc-8 address sanitizer CI with gcc-13 --- ...-ubuntu-mpich.yml => azure-gcc-13-ubuntu-mpich.yml} | 10 +++++----- scripts/workflows-azure.ini | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) rename ci/azure/{azure-gcc-8-ubuntu-mpich.yml => azure-gcc-13-ubuntu-mpich.yml} (98%) diff --git a/ci/azure/azure-gcc-8-ubuntu-mpich.yml b/ci/azure/azure-gcc-13-ubuntu-mpich.yml similarity index 98% rename from ci/azure/azure-gcc-8-ubuntu-mpich.yml rename to ci/azure/azure-gcc-13-ubuntu-mpich.yml index 0780609881..baef447607 100644 --- a/ci/azure/azure-gcc-8-ubuntu-mpich.yml +++ b/ci/azure/azure-gcc-13-ubuntu-mpich.yml @@ -2,7 +2,7 @@ ############## Warning this is a generated file---do not modify ############### ############################################################################### -name: PR tests (gcc-8, ubuntu, mpich, address sanitizer) +name: PR tests (gcc-13, ubuntu, mpich, address sanitizer) trigger: branches: @@ -25,10 +25,10 @@ variables: tag: '$(Build.BuildId)' REPO: lifflander1/vt ARCH: amd64 - UBUNTU: 18.04 + UBUNTU: 22.04 COMPILER_TYPE: gnu - COMPILER: gcc-8 - HOST_COMPILER: gcc-8 + COMPILER: gcc-13 + HOST_COMPILER: gcc-13 BUILD_TYPE: release ULIMIT_CORE: 0 VT_CODE_COVERAGE: 0 @@ -61,7 +61,7 @@ variables: VT_CI_TEST_LB_SCHEMA: 0 RUN_FULL_CI: true CACHE: "$(Agent.TempDirectory)/cache/" - cache_name: ubuntu-gcc-8-cache + cache_name: ubuntu-gcc-13-cache volume_name: ubuntu-cpp build_root: "$(CACHE)$(ARCH)-ubuntu-$(UBUNTU)-$(HOST_COMPILER)-$(COMPILER)-cache/" TS: 0 diff --git a/scripts/workflows-azure.ini b/scripts/workflows-azure.ini index 7905116fb5..900c1ae330 100644 --- a/scripts/workflows-azure.ini +++ b/scripts/workflows-azure.ini @@ -99,16 +99,16 @@ vt_pool = 0 vt_tests_num_nodes = 4 vt_external_fmt = 1 -[PR-tests-gcc-8] -test_configuration = "gcc-8, ubuntu, mpich, address sanitizer" +[PR-tests-gcc-13] +test_configuration = "gcc-13, ubuntu, mpich, address sanitizer" compiler_type = gnu -compiler = gcc-8 -distro = 18.04 +compiler = gcc-13 +distro = 22.04 vt_trace = 1 vt_pool = 0 vt_asan = 1 vt_unity_build = 0 -output_name = ci/azure/azure-gcc-8-ubuntu-mpich.yml +output_name = ci/azure/azure-gcc-13-ubuntu-mpich.yml lsan_options = suppressions=/vt/tests/lsan.supp [PR-tests-gcc-9] From 3389b784ffc3e99600e09f2a650915e2e3002dd1 Mon Sep 17 00:00:00 2001 From: Arkadiusz Szczepkowicz Date: Mon, 30 Sep 2024 16:27:42 +0200 Subject: [PATCH 04/18] #2286: Remove workaround in code for gcc-8 --- src/vt/runnable/runnable.h | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/vt/runnable/runnable.h b/src/vt/runnable/runnable.h index b8228b2edf..ac37d8b2c5 100644 --- a/src/vt/runnable/runnable.h +++ b/src/vt/runnable/runnable.h @@ -45,7 +45,6 @@ #define INCLUDED_VT_RUNNABLE_RUNNABLE_H #include "vt/messaging/message/smart_ptr.h" -#include "vt/configs/debug/debug_var_unused.h" #include "vt/context/runnable_context/td.h" #include "vt/context/runnable_context/trace.h" #include "vt/context/runnable_context/set_context.h" @@ -121,13 +120,11 @@ struct RunnableNew { * * \param[in] in_is_threaded whether the handler can be run with a thread */ - explicit RunnableNew(bool in_is_threaded) + explicit RunnableNew([[maybe_unused]] bool in_is_threaded) #if vt_check_enabled(fcontext) : is_threaded_(in_is_threaded) #endif - { - vt_force_use(in_is_threaded); // FIXME gcc-8 errors out on [[maybe_unused]] - } + { } RunnableNew(RunnableNew&&) = default; RunnableNew(RunnableNew const&) = delete; From fe764e0301c15dd339f45aaee83a48b53915e17a Mon Sep 17 00:00:00 2001 From: Arkadiusz Szczepkowicz Date: Mon, 30 Sep 2024 16:28:31 +0200 Subject: [PATCH 05/18] #2286: Remove warnings during perf tests compilation --- tests/perf/collection_local_send.cc | 3 --- tests/perf/make_runnable_micro.cc | 2 -- tests/perf/objgroup_local_send.cc | 3 --- tests/perf/ping_pong_am.cc | 2 -- tests/perf/send_cost.cc | 4 ---- 5 files changed, 14 deletions(-) diff --git a/tests/perf/collection_local_send.cc b/tests/perf/collection_local_send.cc index 713f4d12e5..dae368209a 100644 --- a/tests/perf/collection_local_send.cc +++ b/tests/perf/collection_local_send.cc @@ -112,12 +112,9 @@ struct NodeObj { private: std::vector> msgs; - HandlerType han; MyTest* test_obj_ = nullptr; vt::objgroup::proxy::Proxy proxy_ = {}; vt::CollectionProxy col_proxy; - int reduce_counter_ = -1; - int i = 0; bool preallocate_ = false; }; diff --git a/tests/perf/make_runnable_micro.cc b/tests/perf/make_runnable_micro.cc index 551b1a10c5..3571dc1f49 100644 --- a/tests/perf/make_runnable_micro.cc +++ b/tests/perf/make_runnable_micro.cc @@ -102,8 +102,6 @@ struct NodeObj { HandlerType han; MyTest* test_obj_ = nullptr; vt::objgroup::proxy::Proxy proxy_ = {}; - int reduce_counter_ = -1; - int i = 0; }; VT_PERF_TEST(MyTest, test_make_runnable_micro) { diff --git a/tests/perf/objgroup_local_send.cc b/tests/perf/objgroup_local_send.cc index 27d484bc8f..21daf48867 100644 --- a/tests/perf/objgroup_local_send.cc +++ b/tests/perf/objgroup_local_send.cc @@ -101,12 +101,9 @@ struct NodeObj { private: std::vector> msgs; - HandlerType han; MyTest* test_obj_ = nullptr; vt::objgroup::proxy::Proxy proxy_ = {}; vt::objgroup::proxy::Proxy obj_proxy; - int reduce_counter_ = -1; - int i = 0; }; VT_PERF_TEST(MyTest, test_objgroup_local_send) { diff --git a/tests/perf/ping_pong_am.cc b/tests/perf/ping_pong_am.cc index 9330529ece..a47e6a0d95 100644 --- a/tests/perf/ping_pong_am.cc +++ b/tests/perf/ping_pong_am.cc @@ -96,8 +96,6 @@ struct NodeObj { private: MyTest* test_obj_ = nullptr; vt::objgroup::proxy::Proxy proxy_ = {}; - int reduce_counter_ = -1; - int i = 0; }; void handlerFinished(MyMsg* msg) { diff --git a/tests/perf/send_cost.cc b/tests/perf/send_cost.cc index 34692eaaa8..3156d1a057 100644 --- a/tests/perf/send_cost.cc +++ b/tests/perf/send_cost.cc @@ -76,7 +76,6 @@ struct SendTest : PerfTestHarness { VT_PERF_TEST(SendTest, test_send) { auto const thisNode = vt::theContext()->getNode(); - auto const lastNode = theContext()->getNumNodes() - 1; auto const prevNode = (thisNode - 1 + num_nodes_) % num_nodes_; auto const nextNode = (thisNode + 1) % num_nodes_; @@ -164,9 +163,6 @@ VT_PERF_TEST(SendTest, test_objgroup_send) { grp_proxy[my_node_].invoke<&NodeObj::initialize>(); auto const thisNode = vt::theContext()->getNode(); - auto const lastNode = theContext()->getNumNodes() - 1; - - auto const prevNode = (thisNode - 1 + num_nodes_) % num_nodes_; auto const nextNode = (thisNode + 1) % num_nodes_; for (auto size : payloadSizes) { From 82c439f3752fb79e0eb8c3ad686e1885efbf3e69 Mon Sep 17 00:00:00 2001 From: Arkadiusz Szczepkowicz Date: Mon, 30 Sep 2024 16:39:51 +0200 Subject: [PATCH 06/18] #2286: Update ubuntu version for new CI to 24.04 --- ci/azure/azure-gcc-13-ubuntu-mpich.yml | 2 +- scripts/workflows-azure.ini | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ci/azure/azure-gcc-13-ubuntu-mpich.yml b/ci/azure/azure-gcc-13-ubuntu-mpich.yml index baef447607..dbd42a39be 100644 --- a/ci/azure/azure-gcc-13-ubuntu-mpich.yml +++ b/ci/azure/azure-gcc-13-ubuntu-mpich.yml @@ -25,7 +25,7 @@ variables: tag: '$(Build.BuildId)' REPO: lifflander1/vt ARCH: amd64 - UBUNTU: 22.04 + UBUNTU: 24.04 COMPILER_TYPE: gnu COMPILER: gcc-13 HOST_COMPILER: gcc-13 diff --git a/scripts/workflows-azure.ini b/scripts/workflows-azure.ini index 900c1ae330..20097247af 100644 --- a/scripts/workflows-azure.ini +++ b/scripts/workflows-azure.ini @@ -103,7 +103,7 @@ vt_external_fmt = 1 test_configuration = "gcc-13, ubuntu, mpich, address sanitizer" compiler_type = gnu compiler = gcc-13 -distro = 22.04 +distro = 24.04 vt_trace = 1 vt_pool = 0 vt_asan = 1 From b05fd4103d3016b6afda22004387ea23a9a8da50 Mon Sep 17 00:00:00 2001 From: Arkadiusz Szczepkowicz Date: Mon, 30 Sep 2024 18:23:57 +0200 Subject: [PATCH 07/18] #2268: Fix installation of python packages on newer versions of ubuntu --- ci/docker/ubuntu-gnu-cpp.dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ci/docker/ubuntu-gnu-cpp.dockerfile b/ci/docker/ubuntu-gnu-cpp.dockerfile index af31b8f87c..76e933df00 100644 --- a/ci/docker/ubuntu-gnu-cpp.dockerfile +++ b/ci/docker/ubuntu-gnu-cpp.dockerfile @@ -38,7 +38,10 @@ RUN apt-get update -y -q && \ mesa-common-dev \ brotli \ python3 \ + python3-schema \ + python3-deepdiff \ python3-brotli \ + python3-numpy \ python3-pip && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* @@ -91,9 +94,6 @@ RUN apt-get update -y -q && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* -RUN pip3 install --upgrade pip \ - && pip3 install schema deepdiff - FROM base as build COPY . /vt From 5ed639e57a80c7596591b6a199a2e531eebedd80 Mon Sep 17 00:00:00 2001 From: Arkadiusz Szczepkowicz Date: Mon, 30 Sep 2024 18:24:51 +0200 Subject: [PATCH 08/18] #2268: Update gcc-8 references --- .github/ISSUE_TEMPLATE/bug_report.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index fa22ca7a66..16743d3bc9 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -25,7 +25,7 @@ If applicable, add screenshots to help explain your problem. **Platform (please complete the following information):** - Supercomputer or desktop [e.g., Trinity, Sierra) - - Compiler environment [e.g., clang-4.0, gcc8] + - Compiler environment [e.g., clang-4.0, gcc9] - Libraries [e.g., mpich-2, openmpi) - Commit ID or release of VT [e.g., vt-1.0.0] From 8492ad939cd6b1d643b26062c8ee705b96b60238 Mon Sep 17 00:00:00 2001 From: Arkadiusz Szczepkowicz Date: Mon, 30 Sep 2024 18:27:07 +0200 Subject: [PATCH 09/18] #2268: Move gcc-13 pipeline definition to be in order --- scripts/workflows-azure.ini | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/scripts/workflows-azure.ini b/scripts/workflows-azure.ini index 20097247af..6d5a14fe4d 100644 --- a/scripts/workflows-azure.ini +++ b/scripts/workflows-azure.ini @@ -99,18 +99,6 @@ vt_pool = 0 vt_tests_num_nodes = 4 vt_external_fmt = 1 -[PR-tests-gcc-13] -test_configuration = "gcc-13, ubuntu, mpich, address sanitizer" -compiler_type = gnu -compiler = gcc-13 -distro = 24.04 -vt_trace = 1 -vt_pool = 0 -vt_asan = 1 -vt_unity_build = 0 -output_name = ci/azure/azure-gcc-13-ubuntu-mpich.yml -lsan_options = suppressions=/vt/tests/lsan.supp - [PR-tests-gcc-9] test_configuration = "gcc-9, ubuntu, mpich, zoltan, json schema test" compiler_type = gnu @@ -150,6 +138,18 @@ pr_pattern = "pr:\\n drafts: true\\n autoCancel: true\\n branches:\\n incl vt_debug_verbose = 1 vt_kokkos_enabled = 1 +[PR-tests-gcc-13] +test_configuration = "gcc-13, ubuntu, mpich, address sanitizer" +compiler_type = gnu +compiler = gcc-13 +distro = 24.04 +vt_trace = 1 +vt_pool = 0 +vt_asan = 1 +vt_unity_build = 0 +output_name = ci/azure/azure-gcc-13-ubuntu-mpich.yml +lsan_options = suppressions=/vt/tests/lsan.supp + [PR-tests-clang-13-alpine] test_configuration = "clang-13, alpine, mpich" compiler_type = clang From 331b9b0a99b93348ecd08f068792bd133cc27b1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Skrzy=C5=84ski?= Date: Fri, 15 Nov 2024 12:45:39 +0100 Subject: [PATCH 10/18] #2268: ignore invalid `maybe-uninitialized` warning --- src/vt/collective/reduce/scoping/strong_types.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/vt/collective/reduce/scoping/strong_types.h b/src/vt/collective/reduce/scoping/strong_types.h index 0953f1683a..a5b21116f9 100644 --- a/src/vt/collective/reduce/scoping/strong_types.h +++ b/src/vt/collective/reduce/scoping/strong_types.h @@ -101,7 +101,12 @@ struct TagPair { } TagType first() const { return t1_; } +#pragma GCC diagnostic push // ignore gcc-13 false positive +#ifndef __clang__ // clang does not recognize "-Wmaybe-uninitialized" +#pragma GCC diagnostic ignored "-Wmaybe-uninitialized" +#endif TagType second() const { return t2_; } +#pragma GCC diagnostic pop private: TagType t1_ = no_tag; From 06373bf8989b6988abb17eae9abaf53cc9a6afb6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Skrzy=C5=84ski?= Date: Fri, 15 Nov 2024 13:16:09 +0100 Subject: [PATCH 11/18] #2268: move JSON validation to clang-16 build Use a build based on Ubuntu 24.04 to ensure recent versions of Python dependencies (python3-schema). --- ci/azure/azure-clang-16-ubuntu-mpich.yml | 4 ++-- ci/azure/azure-gcc-9-ubuntu-mpich.yml | 4 ++-- scripts/workflows-azure.ini | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ci/azure/azure-clang-16-ubuntu-mpich.yml b/ci/azure/azure-clang-16-ubuntu-mpich.yml index 0e13229cdc..9fb0c8a723 100644 --- a/ci/azure/azure-clang-16-ubuntu-mpich.yml +++ b/ci/azure/azure-clang-16-ubuntu-mpich.yml @@ -2,7 +2,7 @@ ############## Warning this is a generated file---do not modify ############### ############################################################################### -name: PR tests (clang-16, ubuntu, mpich) +name: PR tests (clang-16, ubuntu, mpich, json schema test) trigger: branches: @@ -58,7 +58,7 @@ variables: VT_KOKKOS_ENABLED: 0 VT_TV_ENABLED: 0 CMAKE_CXX_STANDARD: 17 - VT_CI_TEST_LB_SCHEMA: 0 + VT_CI_TEST_LB_SCHEMA: 1 RUN_FULL_CI: true CACHE: "$(Agent.TempDirectory)/cache/" cache_name: ubuntu-clang-16-cache diff --git a/ci/azure/azure-gcc-9-ubuntu-mpich.yml b/ci/azure/azure-gcc-9-ubuntu-mpich.yml index 50ace94dbd..9552abaa2b 100644 --- a/ci/azure/azure-gcc-9-ubuntu-mpich.yml +++ b/ci/azure/azure-gcc-9-ubuntu-mpich.yml @@ -2,7 +2,7 @@ ############## Warning this is a generated file---do not modify ############### ############################################################################### -name: PR tests (gcc-9, ubuntu, mpich, zoltan, json schema test) +name: PR tests (gcc-9, ubuntu, mpich, zoltan) trigger: branches: @@ -58,7 +58,7 @@ variables: VT_KOKKOS_ENABLED: 0 VT_TV_ENABLED: 0 CMAKE_CXX_STANDARD: 17 - VT_CI_TEST_LB_SCHEMA: 1 + VT_CI_TEST_LB_SCHEMA: 0 RUN_FULL_CI: true CACHE: "$(Agent.TempDirectory)/cache/" cache_name: ubuntu-gcc-9-cache diff --git a/scripts/workflows-azure.ini b/scripts/workflows-azure.ini index 6d5a14fe4d..382448cc39 100644 --- a/scripts/workflows-azure.ini +++ b/scripts/workflows-azure.ini @@ -100,11 +100,10 @@ vt_tests_num_nodes = 4 vt_external_fmt = 1 [PR-tests-gcc-9] -test_configuration = "gcc-9, ubuntu, mpich, zoltan, json schema test" +test_configuration = "gcc-9, ubuntu, mpich, zoltan" compiler_type = gnu compiler = gcc-9 output_name = ci/azure/azure-gcc-9-ubuntu-mpich.yml -vt_ci_test_lb_schema = 1 vt_zoltan = 1 [PR-tests-gcc-10] @@ -212,11 +211,12 @@ vt_trace = 1 vt_debug_verbose = 1 [PR-tests-clang-16] -test_configuration = "clang-16, ubuntu, mpich" +test_configuration = "clang-16, ubuntu, mpich, json schema test" compiler_type = clang compiler = clang-16 distro = 24.04 output_name = ci/azure/azure-clang-16-ubuntu-mpich.yml +vt_ci_test_lb_schema = 1 vt_trace = 1 [PR-tests-gcc-10-spack-package] From 9ef1c4edcc2a5bacf4ab60dc98c0a61a1be0c47a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Skrzy=C5=84ski?= Date: Fri, 15 Nov 2024 16:08:53 +0100 Subject: [PATCH 12/18] #2268: remove gcc-8 badge from README --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index cccfb09dfa..8b9d932832 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,6 @@ [![codecov](https://codecov.io/gh/DARMA-tasking/vt/branch/develop/graph/badge.svg)](https://codecov.io/gh/DARMA-tasking/vt) [![License](https://img.shields.io/badge/License-BSD%203--Clause-orange.svg)](https://opensource.org/licenses/BSD-3-Clause) ![](https://github.com/DARMA-tasking/vt/workflows/Docker%20Image%20CI/badge.svg) -[![gcc-8, ubuntu, mpich, address sanitizer](https://dev.azure.com/DARMA-tasking/DARMA/_apis/build/status/PR%20tests%20(gcc-8%2C%20ubuntu%2C%20mpich%2C%20address%20sanitizer)?branchName=develop&Label=(gcc-8%2C%20ubuntu%2C%20mpich%2C%20address%20sanitizer))](https://dev.azure.com/DARMA-tasking/DARMA/_build/latest?definitionId=9&branchName=develop) [![gcc-9, ubuntu, mpich, zoltan](https://dev.azure.com/DARMA-tasking/DARMA/_apis/build/status/PR%20tests%20(gcc-9%2C%20ubuntu%2C%20mpich%2C%20zoltan)?branchName=develop&Label=(gcc-9%2C%20ubuntu%2C%20mpich%2C%20zoltan))](https://dev.azure.com/DARMA-tasking/DARMA/_build/latest?definitionId=10&branchName=develop) [![gcc-10, ubuntu, openmpi, no LB](https://dev.azure.com/DARMA-tasking/DARMA/_apis/build/status/PR%20tests%20(gcc-10%2C%20ubuntu%2C%20openmpi%2C%20no%20LB)?branchName=develop&Label=(gcc-10%2C%20ubuntu%2C%20openmpi%2C%20no%20LB))](https://dev.azure.com/DARMA-tasking/DARMA/_build/latest?definitionId=4&branchName=develop) [![gcc-11, ubuntu, mpich](https://dev.azure.com/DARMA-tasking/DARMA/_apis/build/status/PR%20tests%20(gcc-11%2C%20ubuntu%2C%20mpich)?branchName=develop&Label=(gcc-11%2C%20ubuntu%2C%20mpich%2C%20trace%20runtime%2C%20coverage))](https://dev.azure.com/DARMA-tasking/DARMA/_build/latest?definitionId=29&branchName=develop) From ccef3b64038e5506c590904ea636e28c3c419ff0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Skrzy=C5=84ski?= Date: Mon, 18 Nov 2024 13:03:25 +0100 Subject: [PATCH 13/18] #2268: add missing dependencies to clang dockerfile --- ci/docker/ubuntu-clang-cpp.dockerfile | 46 ++++++++++--------- ci/docker/ubuntu-gnu-cpp.dockerfile | 65 +++++++++++++-------------- 2 files changed, 55 insertions(+), 56 deletions(-) diff --git a/ci/docker/ubuntu-clang-cpp.dockerfile b/ci/docker/ubuntu-clang-cpp.dockerfile index 3621d82f71..8598b29c58 100644 --- a/ci/docker/ubuntu-clang-cpp.dockerfile +++ b/ci/docker/ubuntu-clang-cpp.dockerfile @@ -1,6 +1,6 @@ ARG arch=amd64 ARG ubuntu=20.04 -FROM ${arch}/ubuntu:${ubuntu} as base +FROM ${arch}/ubuntu:${ubuntu} AS base ARG proxy="" ARG compiler=clang-11 @@ -14,22 +14,27 @@ ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update -y -q && \ apt-get install -y -q --no-install-recommends \ - ${compiler} \ - ${ubsan_enabled:+llvm-$(echo ${compiler} | cut -d- -f2)} \ - ca-certificates \ - ccache \ - curl \ - git \ - less \ - libomp-dev \ - libomp5 \ - make-guile \ - ninja-build \ - python3 \ - valgrind \ - wget \ - zlib1g \ - zlib1g-dev && \ + ${compiler} \ + ${ubsan_enabled:+llvm-$(echo ${compiler} | cut -d- -f2)} \ + brotli \ + ca-certificates \ + ccache \ + curl \ + git \ + less \ + libomp-dev \ + libomp5 \ + make-guile \ + ninja-build \ + python3 \ + python3-brotli \ + python3-deepdiff \ + python3-pip \ + python3-schema \ + valgrind \ + wget \ + zlib1g \ + zlib1g-dev && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* @@ -52,10 +57,7 @@ ENV PATH=/cmake/bin/:$PATH ENV LESSCHARSET=utf-8 COPY ./ci/deps/mpich.sh mpich.sh -RUN if [ "$ubuntu" = "18.04" ]; then \ - ./mpich.sh 3.3.2 -j4; else \ - ./mpich.sh 4.0.2 -j4; \ - fi +RUN ./mpich.sh 4.0.2 -j4 ENV MPI_EXTRA_FLAGS="" \ CMAKE_PREFIX_PATH="/lib/x86_64-linux-gnu/" \ @@ -109,7 +111,7 @@ ENV BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} \ RUN /vt/ci/build_cpp.sh /vt /build -FROM build as test +FROM build AS test RUN /vt/ci/test_cpp.sh /vt /build RUN /vt/ci/build_vt_sample.sh /vt /build diff --git a/ci/docker/ubuntu-gnu-cpp.dockerfile b/ci/docker/ubuntu-gnu-cpp.dockerfile index 76e933df00..9bda0834b0 100644 --- a/ci/docker/ubuntu-gnu-cpp.dockerfile +++ b/ci/docker/ubuntu-gnu-cpp.dockerfile @@ -1,6 +1,6 @@ ARG arch=amd64 ARG ubuntu=20.04 -FROM ${arch}/ubuntu:${ubuntu} as base +FROM ${arch}/ubuntu:${ubuntu} AS base ARG proxy="" ARG compiler=gcc-9 @@ -15,34 +15,34 @@ ARG zoltan_enabled RUN apt-get update -y -q && \ apt-get install -y -q --no-install-recommends \ - ${compiler} \ - g++-$(echo ${compiler} | cut -d- -f2) \ - ${zoltan_enabled:+gfortran-$(echo ${compiler} | cut -d- -f2)} \ - ca-certificates \ - ccache \ - curl \ - git \ - less \ - libomp5 \ - libunwind-dev \ - make-guile \ - ninja-build \ - valgrind \ - wget \ - zlib1g \ - zlib1g-dev \ - libncurses5-dev \ - m4 \ - libgl1-mesa-dev \ - libglu1-mesa-dev \ - mesa-common-dev \ - brotli \ - python3 \ - python3-schema \ - python3-deepdiff \ - python3-brotli \ - python3-numpy \ - python3-pip && \ + ${compiler} \ + g++-$(echo ${compiler} | cut -d- -f2) \ + ${zoltan_enabled:+gfortran-$(echo ${compiler} | cut -d- -f2)} \ + brotli \ + ca-certificates \ + ccache \ + curl \ + git \ + less \ + libgl1-mesa-dev \ + libglu1-mesa-dev \ + libncurses5-dev \ + libomp5 \ + libunwind-dev \ + m4 \ + make-guile \ + mesa-common-dev \ + ninja-build \ + python3 \ + python3-brotli \ + python3-deepdiff \ + python3-numpy \ + python3-pip \ + python3-schema \ + valgrind \ + wget \ + zlib1g \ + zlib1g-dev && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* @@ -72,10 +72,7 @@ ENV PATH=/cmake/bin/:$PATH ENV LESSCHARSET=utf-8 COPY ./ci/deps/mpich.sh mpich.sh -RUN if [ "$ubuntu" = "18.04" ]; then \ - ./mpich.sh 3.3.2 -j4; else \ - ./mpich.sh 4.0.2 -j4; \ - fi +RUN ./mpich.sh 4.0.2 -j4 ENV MPI_EXTRA_FLAGS="" \ PATH=/usr/lib/ccache/:$PATH @@ -146,7 +143,7 @@ ENV BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} \ RUN /vt/ci/build_cpp.sh /vt /build -FROM build as test +FROM build AS test RUN /vt/ci/test_cpp.sh /vt /build RUN /vt/ci/build_vt_sample.sh /vt /build From c665e101c7910c3de3fabbed1631ea808503af41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Skrzy=C5=84ski?= Date: Mon, 18 Nov 2024 15:52:32 +0100 Subject: [PATCH 14/18] #2268: update json reference file --- examples/lb_data/lb_data_file_example.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/lb_data/lb_data_file_example.json b/examples/lb_data/lb_data_file_example.json index 061a3fe210..0183c05f13 100644 --- a/examples/lb_data/lb_data_file_example.json +++ b/examples/lb_data/lb_data_file_example.json @@ -23,7 +23,7 @@ { "communications": [ { - "bytes": 152.0, + "bytes": 160.0, "from": { "collection_id": 7, "home": 0, From 633a461ce16b49ba522fcddd1d68b960bc84e851 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Skrzy=C5=84ski?= Date: Thu, 21 Nov 2024 18:08:03 +0100 Subject: [PATCH 15/18] #2268: remove redundant code from dockerfiles --- ci/docker/alpine-cpp.dockerfile | 37 -------------- ci/docker/develop.dockerfile | 44 ----------------- .../ubuntu-20.04-gnu-openmpi-cpp.dockerfile | 45 ----------------- ci/docker/ubuntu-clang-cpp.dockerfile | 43 ----------------- ci/docker/ubuntu-gnu-cpp.dockerfile | 48 ------------------- ci/docker/ubuntu-gnu-docs.dockerfile | 40 ---------------- ci/docker/ubuntu-gnu-vtk-cpp.dockerfile | 48 ------------------- ci/docker/ubuntu-intel-oneapi-cpp.dockerfile | 37 -------------- ci/docker/ubuntu-nvidia-cpp.dockerfile | 42 ---------------- 9 files changed, 384 deletions(-) diff --git a/ci/docker/alpine-cpp.dockerfile b/ci/docker/alpine-cpp.dockerfile index 9eee993129..aeadfee2d7 100644 --- a/ci/docker/alpine-cpp.dockerfile +++ b/ci/docker/alpine-cpp.dockerfile @@ -52,43 +52,6 @@ ENV CC=mpicc \ FROM base as build COPY . /vt - -ARG VT_LB_ENABLED -ARG VT_TRACE_ENABLED -ARG VT_TRACE_RUNTIME_ENABLED -ARG VT_MIMALLOC_ENABLED -ARG VT_DOXYGEN_ENABLED -ARG VT_ASAN_ENABLED -ARG VT_UBSAN_ENABLED -ARG VT_WERROR_ENABLED -ARG VT_POOL_ENABLED -ARG VT_PRODUCTION_BUILD_ENABLED -ARG VT_FCONTEXT_ENABLED -ARG CMAKE_BUILD_TYPE -ARG VT_NO_COLOR_ENABLED -ARG BUILD_SHARED_LIBS -ARG CMAKE_CXX_STANDARD -ARG VT_DEBUG_VERBOSE -ARG VT_CI_BUILD - -ENV VT_LB_ENABLED=${VT_LB_ENABLED} \ - VT_TRACE_ENABLED=${VT_TRACE_ENABLED} \ - VT_MIMALLOC_ENABLED=${VT_MIMALLOC_ENABLED} \ - VT_DOXYGEN_ENABLED=${VT_DOXYGEN_ENABLED} \ - VT_TRACE_RUNTIME_ENABLED=${VT_TRACE_RUNTIME} \ - VT_ASAN_ENABLED=${VT_ASAN_ENABLED} \ - VT_UBSAN_ENABLED=${VT_UBSAN_ENABLED} \ - VT_WERROR_ENABLED=${VT_WERROR_ENABLED} \ - VT_POOL_ENABLED=${VT_POOL_ENABLED} \ - VT_PRODUCTION_BUILD_ENABLED=${VT_PRODUCTION_BUILD_ENABLED} \ - VT_FCONTEXT_ENABLED=${VT_FCONTEXT_ENABLED} \ - VT_NO_COLOR_ENABLED=${VT_NO_COLOR_ENABLED} \ - CMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} \ - BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} \ - CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \ - VT_DEBUG_VERBOSE=${VT_DEBUG_VERBOSE} \ - VT_CI_BUILD=${VT_CI_BUILD} - RUN /vt/ci/build_cpp.sh /vt /build FROM build as test diff --git a/ci/docker/develop.dockerfile b/ci/docker/develop.dockerfile index 1df31c93d1..6deab0bdb9 100644 --- a/ci/docker/develop.dockerfile +++ b/ci/docker/develop.dockerfile @@ -31,50 +31,6 @@ RUN if test ${zoltan_enabled} -eq 1; then \ COPY . /vt -ARG VT_LB_ENABLED -ARG VT_TRACE_ENABLED -ARG VT_TRACE_RUNTIME_ENABLED -ARG VT_MIMALLOC_ENABLED -ARG VT_DOXYGEN_ENABLED -ARG VT_ASAN_ENABLED -ARG VT_UBSAN_ENABLED -ARG VT_WERROR_ENABLED -ARG VT_POOL_ENABLED -ARG VT_PRODUCTION_BUILD_ENABLED -ARG VT_ZOLTAN_ENABLED -ARG CMAKE_BUILD_TYPE -ARG VT_EXTENDED_TESTS_ENABLED -ARG VT_FCONTEXT_ENABLED -ARG VT_NO_COLOR_ENABLED -ARG BUILD_SHARED_LIBS -ARG CMAKE_CXX_STANDARD -ARG VT_DEBUG_VERBOSE -ARG VT_CI_BUILD - -ENV VT_LB_ENABLED=${VT_LB_ENABLED} \ - VT_TRACE_ENABLED=${VT_TRACE_ENABLED} \ - VT_MIMALLOC_ENABLED=${VT_MIMALLOC_ENABLED} \ - VT_DOXYGEN_ENABLED=${VT_DOXYGEN_ENABLED} \ - VT_TRACE_RUNTIME_ENABLED=${VT_TRACE_RUNTIME} \ - VT_ASAN_ENABLED=${VT_ASAN_ENABLED} \ - VT_UBSAN_ENABLED=${VT_UBSAN_ENABLED} \ - VT_WERROR_ENABLED=${VT_WERROR_ENABLED} \ - VT_POOL_ENABLED=${VT_POOL_ENABLED} \ - VT_PRODUCTION_BUILD_ENABLED=${VT_PRODUCTION_BUILD_ENABLED} \ - VT_MPI_GUARD_ENABLED=${VT_MPI_GUARD_ENABLED} \ - VT_ZOLTAN_ENABLED=${VT_ZOLTAN_ENABLED} \ - VT_EXTENDED_TESTS_ENABLED=${VT_EXTENDED_TESTS_ENABLED} \ - VT_UNITY_BUILD_ENABLED=${VT_UNITY_BUILD_ENABLED} \ - VT_FCONTEXT_ENABLED=${VT_FCONTEXT_ENABLED} \ - VT_DIAGNOSTICS_ENABLED=${VT_DIAGNOSTICS_ENABLED} \ - VT_DIAGNOSTICS_RUNTIME_ENABLED=${VT_DIAGNOSTICS_RUNTIME_ENABLED} \ - VT_NO_COLOR_ENABLED=${VT_NO_COLOR_ENABLED} \ - CMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} \ - BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} \ - CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \ - VT_DEBUG_VERBOSE=${VT_DEBUG_VERBOSE} \ - VT_CI_BUILD=${VT_CI_BUILD} - RUN /vt/ci/build_cpp.sh /vt /build RUN /vt/ci/test_cpp.sh /vt /build RUN /vt/ci/build_vt_sample.sh /vt /build diff --git a/ci/docker/ubuntu-20.04-gnu-openmpi-cpp.dockerfile b/ci/docker/ubuntu-20.04-gnu-openmpi-cpp.dockerfile index 9cb7bfcf54..543eeabc60 100644 --- a/ci/docker/ubuntu-20.04-gnu-openmpi-cpp.dockerfile +++ b/ci/docker/ubuntu-20.04-gnu-openmpi-cpp.dockerfile @@ -78,51 +78,6 @@ ENV OMPI_ALLOW_RUN_AS_ROOT=1 \ FROM base as build COPY . /vt - -ARG VT_LB_ENABLED -ARG VT_TRACE_ENABLED -ARG VT_TRACE_RUNTIME_ENABLED -ARG VT_MIMALLOC_ENABLED -ARG VT_DOXYGEN_ENABLED -ARG VT_ASAN_ENABLED -ARG VT_UBSAN_ENABLED -ARG VT_WERROR_ENABLED -ARG VT_POOL_ENABLED -ARG VT_PRODUCTION_BUILD_ENABLED -ARG VT_ZOLTAN_ENABLED -ARG VT_FCONTEXT_ENABLED -ARG CMAKE_BUILD_TYPE -ARG VT_EXTENDED_TESTS_ENABLED -ARG VT_NO_COLOR_ENABLED -ARG BUILD_SHARED_LIBS -ARG CMAKE_CXX_STANDARD -ARG VT_DEBUG_VERBOSE -ARG VT_CI_BUILD - -ENV VT_LB_ENABLED=${VT_LB_ENABLED} \ - VT_TRACE_ENABLED=${VT_TRACE_ENABLED} \ - VT_MIMALLOC_ENABLED=${VT_MIMALLOC_ENABLED} \ - VT_DOXYGEN_ENABLED=${VT_DOXYGEN_ENABLED} \ - VT_TRACE_RUNTIME_ENABLED=${VT_TRACE_RUNTIME} \ - VT_ASAN_ENABLED=${VT_ASAN_ENABLED} \ - VT_UBSAN_ENABLED=${VT_UBSAN_ENABLED} \ - VT_WERROR_ENABLED=${VT_WERROR_ENABLED} \ - VT_POOL_ENABLED=${VT_POOL_ENABLED} \ - VT_MPI_GUARD_ENABLED=${VT_MPI_GUARD_ENABLED} \ - VT_ZOLTAN_ENABLED=${VT_ZOLTAN_ENABLED} \ - VT_EXTENDED_TESTS_ENABLED=${VT_EXTENDED_TESTS_ENABLED} \ - VT_UNITY_BUILD_ENABLED=${VT_UNITY_BUILD_ENABLED} \ - VT_PRODUCTION_BUILD_ENABLED=${VT_PRODUCTION_BUILD_ENABLED} \ - VT_FCONTEXT_ENABLED=${VT_FCONTEXT_ENABLED} \ - VT_DIAGNOSTICS_ENABLED=${VT_DIAGNOSTICS_ENABLED} \ - VT_DIAGNOSTICS_RUNTIME_ENABLED=${VT_DIAGNOSTICS_RUNTIME_ENABLED} \ - VT_NO_COLOR_ENABLED=${VT_NO_COLOR_ENABLED} \ - CMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} \ - BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} \ - CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \ - VT_DEBUG_VERBOSE=${VT_DEBUG_VERBOSE} \ - VT_CI_BUILD=${VT_CI_BUILD} - RUN /vt/ci/build_cpp.sh /vt /build FROM build as test diff --git a/ci/docker/ubuntu-clang-cpp.dockerfile b/ci/docker/ubuntu-clang-cpp.dockerfile index 8598b29c58..cd77b905fe 100644 --- a/ci/docker/ubuntu-clang-cpp.dockerfile +++ b/ci/docker/ubuntu-clang-cpp.dockerfile @@ -66,49 +66,6 @@ ENV MPI_EXTRA_FLAGS="" \ FROM base as build COPY . /vt - -ARG BUILD_SHARED_LIBS -ARG CMAKE_BUILD_TYPE -ARG VT_ASAN_ENABLED -ARG VT_DOXYGEN_ENABLED -ARG VT_EXTENDED_TESTS_ENABLED -ARG VT_FCONTEXT_ENABLED -ARG VT_LB_ENABLED -ARG VT_MIMALLOC_ENABLED -ARG VT_NO_COLOR_ENABLED -ARG VT_POOL_ENABLED -ARG VT_PRODUCTION_BUILD_ENABLED -ARG VT_TRACE_ENABLED -ARG VT_TRACE_RUNTIME_ENABLED -ARG VT_UBSAN_ENABLED -ARG VT_WERROR_ENABLED -ARG CMAKE_CXX_STANDARD -ARG VT_DEBUG_VERBOSE -ARG VT_CI_BUILD - -ENV BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} \ - CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \ - VT_ASAN_ENABLED=${VT_ASAN_ENABLED} \ - VT_DIAGNOSTICS_ENABLED=${VT_DIAGNOSTICS_ENABLED} \ - VT_DIAGNOSTICS_RUNTIME_ENABLED=${VT_DIAGNOSTICS_RUNTIME_ENABLED} \ - VT_DOXYGEN_ENABLED=${VT_DOXYGEN_ENABLED} \ - VT_EXTENDED_TESTS_ENABLED=${VT_EXTENDED_TESTS_ENABLED} \ - VT_FCONTEXT_ENABLED=${VT_FCONTEXT_ENABLED} \ - VT_LB_ENABLED=${VT_LB_ENABLED} \ - VT_MIMALLOC_ENABLED=${VT_MIMALLOC_ENABLED} \ - VT_MPI_GUARD_ENABLED=${VT_MPI_GUARD_ENABLED} \ - VT_NO_COLOR_ENABLED=${VT_NO_COLOR_ENABLED} \ - VT_POOL_ENABLED=${VT_POOL_ENABLED} \ - VT_PRODUCTION_BUILD_ENABLED=${VT_PRODUCTION_BUILD_ENABLED} \ - VT_TRACE_ENABLED=${VT_TRACE_ENABLED} \ - VT_TRACE_RUNTIME_ENABLED=${VT_TRACE_RUNTIME} \ - VT_UBSAN_ENABLED=${VT_UBSAN_ENABLED} \ - VT_UNITY_BUILD_ENABLED=${VT_UNITY_BUILD_ENABLED} \ - VT_WERROR_ENABLED=${VT_WERROR_ENABLED} \ - CMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} \ - VT_DEBUG_VERBOSE=${VT_DEBUG_VERBOSE} \ - VT_CI_BUILD=${VT_CI_BUILD} - RUN /vt/ci/build_cpp.sh /vt /build FROM build AS test diff --git a/ci/docker/ubuntu-gnu-cpp.dockerfile b/ci/docker/ubuntu-gnu-cpp.dockerfile index 9bda0834b0..5469cd6098 100644 --- a/ci/docker/ubuntu-gnu-cpp.dockerfile +++ b/ci/docker/ubuntu-gnu-cpp.dockerfile @@ -93,54 +93,6 @@ RUN apt-get update -y -q && \ FROM base as build COPY . /vt - -ARG BUILD_SHARED_LIBS -ARG CMAKE_BUILD_TYPE -ARG VT_ASAN_ENABLED -ARG VT_DOXYGEN_ENABLED -ARG VT_EXTENDED_TESTS_ENABLED -ARG VT_FCONTEXT_ENABLED -ARG VT_LB_ENABLED -ARG VT_MIMALLOC_ENABLED -ARG VT_NO_COLOR_ENABLED -ARG VT_POOL_ENABLED -ARG VT_PRODUCTION_BUILD_ENABLED -ARG VT_TRACE_ENABLED -ARG VT_TRACE_RUNTIME_ENABLED -ARG VT_UBSAN_ENABLED -ARG VT_WERROR_ENABLED -ARG VT_ZOLTAN_ENABLED -ARG CMAKE_CXX_STANDARD -ARG VT_DEBUG_VERBOSE -ARG VT_CI_BUILD -ARG VT_KOKKOS_ENABLED - -ENV BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} \ - CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \ - VT_ASAN_ENABLED=${VT_ASAN_ENABLED} \ - VT_DIAGNOSTICS_ENABLED=${VT_DIAGNOSTICS_ENABLED} \ - VT_DIAGNOSTICS_RUNTIME_ENABLED=${VT_DIAGNOSTICS_RUNTIME_ENABLED} \ - VT_DOXYGEN_ENABLED=${VT_DOXYGEN_ENABLED} \ - VT_EXTENDED_TESTS_ENABLED=${VT_EXTENDED_TESTS_ENABLED} \ - VT_FCONTEXT_ENABLED=${VT_FCONTEXT_ENABLED} \ - VT_LB_ENABLED=${VT_LB_ENABLED} \ - VT_MIMALLOC_ENABLED=${VT_MIMALLOC_ENABLED} \ - VT_MPI_GUARD_ENABLED=${VT_MPI_GUARD_ENABLED} \ - VT_NO_COLOR_ENABLED=${VT_NO_COLOR_ENABLED} \ - VT_POOL_ENABLED=${VT_POOL_ENABLED} \ - VT_PRODUCTION_BUILD_ENABLED=${VT_PRODUCTION_BUILD_ENABLED} \ - VT_TRACE_ENABLED=${VT_TRACE_ENABLED} \ - VT_TRACE_RUNTIME_ENABLED=${VT_TRACE_RUNTIME} \ - VT_UBSAN_ENABLED=${VT_UBSAN_ENABLED} \ - VT_UNITY_BUILD_ENABLED=${VT_UNITY_BUILD_ENABLED} \ - VT_WERROR_ENABLED=${VT_WERROR_ENABLED} \ - VT_ZOLTAN_ENABLED=${VT_ZOLTAN_ENABLED} \ - CMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} \ - VT_DEBUG_VERBOSE=$(VT_DEBUG_VERBOSE) \ - VT_CI_BUILD=${VT_CI_BUILD} \ - VT_KOKKOS_ENABLED=${VT_KOKKOS_ENABLED} \ - VT_TV_ENABLED=${VT_TV_ENABLED} - RUN /vt/ci/build_cpp.sh /vt /build FROM build AS test diff --git a/ci/docker/ubuntu-gnu-docs.dockerfile b/ci/docker/ubuntu-gnu-docs.dockerfile index 1a393d7f9c..803ef13990 100644 --- a/ci/docker/ubuntu-gnu-docs.dockerfile +++ b/ci/docker/ubuntu-gnu-docs.dockerfile @@ -54,45 +54,5 @@ FROM base as build COPY . /vt ARG token -ARG VT_LB_ENABLED -ARG VT_TRACE_ENABLED -ARG VT_TRACE_RUNTIME_ENABLED -ARG VT_MIMALLOC_ENABLED -ARG VT_DOXYGEN_ENABLED -ARG VT_ASAN_ENABLED -ARG VT_UBSAN_ENABLED -ARG VT_WERROR_ENABLED -ARG VT_POOL_ENABLED -ARG VT_PRODUCTION_BUILD_ENABLED -ARG CMAKE_BUILD_TYPE -ARG VT_EXTENDED_TESTS_ENABLED -ARG VT_FCONTEXT_ENABLED -ARG VT_NO_COLOR_ENABLED -ARG BUILD_SHARED_LIBS -ARG CMAKE_CXX_STANDARD -ARG VT_DEBUG_VERBOSE -ARG VT_CI_BUILD - -ENV VT_LB_ENABLED=${VT_LB_ENABLED} \ - VT_TRACE_ENABLED=${VT_TRACE_ENABLED} \ - VT_MIMALLOC_ENABLED=${VT_MIMALLOC_ENABLED} \ - VT_DOXYGEN_ENABLED=${VT_DOXYGEN_ENABLED} \ - VT_TRACE_RUNTIME_ENABLED=${VT_TRACE_RUNTIME} \ - VT_ASAN_ENABLED=${VT_ASAN_ENABLED} \ - VT_UBSAN_ENABLED=${VT_UBSAN_ENABLED} \ - VT_WERROR_ENABLED=${VT_WERROR_ENABLED} \ - VT_POOL_ENABLED=${VT_POOL_ENABLED} \ - VT_PRODUCTION_BUILD_ENABLED=${VT_PRODUCTION_BUILD_ENABLED} \ - VT_MPI_GUARD_ENABLED=${VT_MPI_GUARD_ENABLED} \ - VT_EXTENDED_TESTS_ENABLED=${VT_EXTENDED_TESTS_ENABLED} \ - VT_FCONTEXT_ENABLED=${VT_FCONTEXT_ENABLED} \ - VT_DIAGNOSTICS_ENABLED=${VT_DIAGNOSTICS_ENABLED} \ - VT_DIAGNOSTICS_RUNTIME_ENABLED=${VT_DIAGNOSTICS_RUNTIME_ENABLED} \ - VT_NO_COLOR_ENABLED=${VT_NO_COLOR_ENABLED} \ - CMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} \ - BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} \ - CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \ - VT_DEBUG_VERBOSE=${VT_DEBUG_VERBOSE} \ - VT_CI_BUILD=${VT_CI_BUILD} RUN /vt/ci/build_cpp.sh /vt /build "${token}" diff --git a/ci/docker/ubuntu-gnu-vtk-cpp.dockerfile b/ci/docker/ubuntu-gnu-vtk-cpp.dockerfile index 2ba34f3a53..cc6f46c38b 100644 --- a/ci/docker/ubuntu-gnu-vtk-cpp.dockerfile +++ b/ci/docker/ubuntu-gnu-vtk-cpp.dockerfile @@ -100,54 +100,6 @@ RUN pip3 install schema FROM base as build COPY . /vt - -ARG BUILD_SHARED_LIBS -ARG CMAKE_BUILD_TYPE -ARG VT_ASAN_ENABLED -ARG VT_DOXYGEN_ENABLED -ARG VT_EXTENDED_TESTS_ENABLED -ARG VT_FCONTEXT_ENABLED -ARG VT_LB_ENABLED -ARG VT_MIMALLOC_ENABLED -ARG VT_NO_COLOR_ENABLED -ARG VT_POOL_ENABLED -ARG VT_PRODUCTION_BUILD_ENABLED -ARG VT_TRACE_ENABLED -ARG VT_TRACE_RUNTIME_ENABLED -ARG VT_UBSAN_ENABLED -ARG VT_WERROR_ENABLED -ARG VT_ZOLTAN_ENABLED -ARG CMAKE_CXX_STANDARD -ARG VT_DEBUG_VERBOSE -ARG VT_CI_BUILD -ARG VT_KOKKOS_ENABLED - -ENV BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} \ - CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \ - VT_ASAN_ENABLED=${VT_ASAN_ENABLED} \ - VT_DIAGNOSTICS_ENABLED=${VT_DIAGNOSTICS_ENABLED} \ - VT_DIAGNOSTICS_RUNTIME_ENABLED=${VT_DIAGNOSTICS_RUNTIME_ENABLED} \ - VT_DOXYGEN_ENABLED=${VT_DOXYGEN_ENABLED} \ - VT_EXTENDED_TESTS_ENABLED=${VT_EXTENDED_TESTS_ENABLED} \ - VT_FCONTEXT_ENABLED=${VT_FCONTEXT_ENABLED} \ - VT_LB_ENABLED=${VT_LB_ENABLED} \ - VT_MIMALLOC_ENABLED=${VT_MIMALLOC_ENABLED} \ - VT_MPI_GUARD_ENABLED=${VT_MPI_GUARD_ENABLED} \ - VT_NO_COLOR_ENABLED=${VT_NO_COLOR_ENABLED} \ - VT_POOL_ENABLED=${VT_POOL_ENABLED} \ - VT_PRODUCTION_BUILD_ENABLED=${VT_PRODUCTION_BUILD_ENABLED} \ - VT_TRACE_ENABLED=${VT_TRACE_ENABLED} \ - VT_TRACE_RUNTIME_ENABLED=${VT_TRACE_RUNTIME} \ - VT_UBSAN_ENABLED=${VT_UBSAN_ENABLED} \ - VT_UNITY_BUILD_ENABLED=${VT_UNITY_BUILD_ENABLED} \ - VT_WERROR_ENABLED=${VT_WERROR_ENABLED} \ - VT_ZOLTAN_ENABLED=${VT_ZOLTAN_ENABLED} \ - CMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} \ - VT_DEBUG_VERBOSE=$(VT_DEBUG_VERBOSE) \ - VT_CI_BUILD=${VT_CI_BUILD} \ - VT_KOKKOS_ENABLED=${VT_KOKKOS_ENABLED} \ - VT_TV_ENABLED=${VT_TV_ENABLED} - RUN /vt/ci/build_cpp.sh /vt /build FROM build as test diff --git a/ci/docker/ubuntu-intel-oneapi-cpp.dockerfile b/ci/docker/ubuntu-intel-oneapi-cpp.dockerfile index 82e0361fd4..f777abefde 100644 --- a/ci/docker/ubuntu-intel-oneapi-cpp.dockerfile +++ b/ci/docker/ubuntu-intel-oneapi-cpp.dockerfile @@ -59,43 +59,6 @@ ENV CC=mpicc \ FROM base as build COPY . /vt - -ARG VT_LB_ENABLED -ARG VT_TRACE_ENABLED -ARG VT_TRACE_RUNTIME_ENABLED -ARG VT_MIMALLOC_ENABLED -ARG VT_DOXYGEN_ENABLED -ARG VT_ASAN_ENABLED -ARG VT_WERROR_ENABLED -ARG VT_POOL_ENABLED -ARG VT_PRODUCTION_BUILD_ENABLED -ARG VT_FCONTEXT_ENABLED -ARG CMAKE_BUILD_TYPE -ARG VT_EXTENDED_TESTS_ENABLED -ARG CMAKE_CXX_STANDARD -ARG VT_DEBUG_VERBOSE -ARG VT_CI_BUILD - -ENV VT_LB_ENABLED=${VT_LB_ENABLED} \ - VT_TRACE_ENABLED=${VT_TRACE_ENABLED} \ - VT_MIMALLOC_ENABLED=${VT_MIMALLOC_ENABLED} \ - VT_DOXYGEN_ENABLED=${VT_DOXYGEN_ENABLED} \ - VT_TRACE_RUNTIME_ENABLED=${VT_TRACE_RUNTIME} \ - VT_ASAN_ENABLED=${VT_ASAN_ENABLED} \ - VT_WERROR_ENABLED=${VT_WERROR_ENABLED} \ - VT_POOL_ENABLED=${VT_POOL_ENABLED} \ - VT_MPI_GUARD_ENABLED=${VT_MPI_GUARD_ENABLED} \ - VT_EXTENDED_TESTS_ENABLED=${VT_EXTENDED_TESTS_ENABLED} \ - VT_UNITY_BUILD_ENABLED=${VT_UNITY_BUILD_ENABLED} \ - VT_PRODUCTION_BUILD_ENABLED=${VT_PRODUCTION_BUILD_ENABLED} \ - VT_FCONTEXT_ENABLED=${VT_FCONTEXT_ENABLED} \ - VT_DIAGNOSTICS_ENABLED=${VT_DIAGNOSTICS_ENABLED} \ - VT_DIAGNOSTICS_RUNTIME_ENABLED=${VT_DIAGNOSTICS_RUNTIME_ENABLED} \ - CMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} \ - CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \ - VT_DEBUG_VERBOSE=${VT_DEBUG_VERBOSE} \ - VT_CI_BUILD=${VT_CI_BUILD} - RUN /vt/ci/build_cpp.sh /vt /build FROM build as test diff --git a/ci/docker/ubuntu-nvidia-cpp.dockerfile b/ci/docker/ubuntu-nvidia-cpp.dockerfile index b916ab94c6..b2ecce38a6 100644 --- a/ci/docker/ubuntu-nvidia-cpp.dockerfile +++ b/ci/docker/ubuntu-nvidia-cpp.dockerfile @@ -70,48 +70,6 @@ ENV MPI_EXTRA_FLAGS="" \ FROM base as build COPY . /vt - -ARG VT_LB_ENABLED -ARG VT_TRACE_ENABLED -ARG VT_TRACE_RUNTIME_ENABLED -ARG VT_MIMALLOC_ENABLED -ARG VT_DOXYGEN_ENABLED -ARG VT_ASAN_ENABLED -ARG VT_UBSAN_ENABLED -ARG VT_WERROR_ENABLED -ARG VT_POOL_ENABLED -ARG VT_PRODUCTION_BUILD_ENABLED -ARG CMAKE_BUILD_TYPE -ARG VT_EXTENDED_TESTS_ENABLED -ARG VT_FCONTEXT_ENABLED -ARG VT_NO_COLOR_ENABLED -ARG BUILD_SHARED_LIBS -ARG CMAKE_CXX_STANDARD -ARG VT_DEBUG_VERBOSE -ARG VT_CI_BUILD - -ENV VT_LB_ENABLED=${VT_LB_ENABLED} \ - VT_TRACE_ENABLED=${VT_TRACE_ENABLED} \ - VT_MIMALLOC_ENABLED=${VT_MIMALLOC_ENABLED} \ - VT_DOXYGEN_ENABLED=${VT_DOXYGEN_ENABLED} \ - VT_TRACE_RUNTIME_ENABLED=${VT_TRACE_RUNTIME} \ - VT_ASAN_ENABLED=${VT_ASAN_ENABLED} \ - VT_UBSAN_ENABLED=${VT_UBSAN_ENABLED} \ - VT_WERROR_ENABLED=${VT_WERROR_ENABLED} \ - VT_POOL_ENABLED=${VT_POOL_ENABLED} \ - VT_EXTENDED_TESTS_ENABLED=${VT_EXTENDED_TESTS_ENABLED} \ - VT_UNITY_BUILD_ENABLED=${VT_UNITY_BUILD_ENABLED} \ - VT_PRODUCTION_BUILD_ENABLED=${VT_PRODUCTION_BUILD_ENABLED} \ - VT_FCONTEXT_ENABLED=${VT_FCONTEXT_ENABLED} \ - VT_DIAGNOSTICS_ENABLED=${VT_DIAGNOSTICS_ENABLED} \ - VT_DIAGNOSTICS_RUNTIME_ENABLED=${VT_DIAGNOSTICS_RUNTIME_ENABLED} \ - VT_NO_COLOR_ENABLED=${VT_NO_COLOR_ENABLED} \ - CMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} \ - BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} \ - CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \ - VT_DEBUG_VERBOSE=${VT_DEBUG_VERBOSE} \ - VT_CI_BUILD=${VT_CI_BUILD} - RUN /vt/ci/build_cpp.sh /vt /build FROM build as test From a505c095658f2e55d665022bec299f3461919685 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Skrzy=C5=84ski?= Date: Thu, 21 Nov 2024 18:12:44 +0100 Subject: [PATCH 16/18] #2268: add gcc-13 badge to README.md --- README.md | 1 + docker-compose.yml | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 8b9d932832..735732ef2d 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,7 @@ [![gcc-10, ubuntu, openmpi, no LB](https://dev.azure.com/DARMA-tasking/DARMA/_apis/build/status/PR%20tests%20(gcc-10%2C%20ubuntu%2C%20openmpi%2C%20no%20LB)?branchName=develop&Label=(gcc-10%2C%20ubuntu%2C%20openmpi%2C%20no%20LB))](https://dev.azure.com/DARMA-tasking/DARMA/_build/latest?definitionId=4&branchName=develop) [![gcc-11, ubuntu, mpich](https://dev.azure.com/DARMA-tasking/DARMA/_apis/build/status/PR%20tests%20(gcc-11%2C%20ubuntu%2C%20mpich)?branchName=develop&Label=(gcc-11%2C%20ubuntu%2C%20mpich%2C%20trace%20runtime%2C%20coverage))](https://dev.azure.com/DARMA-tasking/DARMA/_build/latest?definitionId=29&branchName=develop) [![gcc-12, ubuntu, mpich](https://dev.azure.com/DARMA-tasking/DARMA/_apis/build/status/PR%20tests%20(gcc-12%2C%20ubuntu%2C%20mpich)?branchName=develop&Label=(gcc-12%2C%20ubuntu%2C%20mpich))](https://dev.azure.com/DARMA-tasking/DARMA/_build/latest?definitionId=30&branchName=develop) +[![gcc-13, ubuntu, mpich](https://dev.azure.com/DARMA-tasking/DARMA/_apis/build/status/PR%20tests%20(gcc-13%2C%20ubuntu%2C%20mpich%2C%20address%20sanitizer)?branchName=develop&Label=(gcc-13%2C%20ubuntu%2C%20mpich))](https://dev.azure.com/DARMA-tasking/DARMA/_build/latest?definitionId=36&branchName=develop) [![clang-9, ubuntu, mpich](https://dev.azure.com/DARMA-tasking/DARMA/_apis/build/status/PR%20tests%20(clang-9%2C%20ubuntu%2C%20mpich)?branchName=develop&Label=(clang-9.0%2C%20ubuntu%2C%20mpich))](https://dev.azure.com/DARMA-tasking/DARMA/_build?definitionId=22&branchName=develop) [![clang-10, ubuntu, mpich](https://dev.azure.com/DARMA-tasking/DARMA/_apis/build/status/PR%20tests%20(clang-10%2C%20ubuntu%2C%20mpich)?branchName=develop&Label=(clang-10.0%2C%20ubuntu%2C%20mpich))](https://dev.azure.com/DARMA-tasking/DARMA/_build?definitionId=21&branchName=develop) [![clang-11, ubuntu, mpich](https://dev.azure.com/DARMA-tasking/DARMA/_apis/build/status/PR%20tests%20(clang-11%2C%20ubuntu%2C%20mpich)?branchName=develop&Label=(clang-11.0%2C%20ubuntu%2C%20mpich))](https://dev.azure.com/DARMA-tasking/DARMA/_build?definitionId=25&branchName=develop) diff --git a/docker-compose.yml b/docker-compose.yml index c00e1aed43..f2e4f50c8a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -10,12 +10,12 @@ # Variables: # ARCH={amd64, arm64v8, ...} # COMPILER_TYPE={gnu, clang, intel, nvidia} -# COMPILER={gcc-9, gcc-10, -# clang-8, clang-9, clang-10, +# COMPILER={gcc-9, gcc-10, gcc-11, gcc-12, gcc-13 +# clang-9, clang-10, clang-11, clang-12, clang-13, clang-14 # icpc, icpx, # nvcc-11, nvcc-11.2} # REPO=lifflander1/vt -# UBUNTU={18.04, 20.04, 22.04} +# UBUNTU={20.04, 22.04, 24.04} # ULIMIT_CORE=0 # # DARMA/vt Configuration Variables: From 63016fdb7c4c702140adea63a1184b3112164682 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Skrzy=C5=84ski?= Date: Wed, 27 Nov 2024 10:41:50 +0100 Subject: [PATCH 17/18] #2268: revert "ignore invalid `maybe-uninitialized` warning" This reverts commit 331b9b0a99b93348ecd08f068792bd133cc27b1f. --- src/vt/collective/reduce/scoping/strong_types.h | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/vt/collective/reduce/scoping/strong_types.h b/src/vt/collective/reduce/scoping/strong_types.h index a5b21116f9..0953f1683a 100644 --- a/src/vt/collective/reduce/scoping/strong_types.h +++ b/src/vt/collective/reduce/scoping/strong_types.h @@ -101,12 +101,7 @@ struct TagPair { } TagType first() const { return t1_; } -#pragma GCC diagnostic push // ignore gcc-13 false positive -#ifndef __clang__ // clang does not recognize "-Wmaybe-uninitialized" -#pragma GCC diagnostic ignored "-Wmaybe-uninitialized" -#endif TagType second() const { return t2_; } -#pragma GCC diagnostic pop private: TagType t1_ = no_tag; From b4925858b2a6821876c20e9aa3a5b1d0e5ed0801 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Skrzy=C5=84ski?= Date: Wed, 27 Nov 2024 11:16:56 +0100 Subject: [PATCH 18/18] #2268: avoid `maybe_uninitialized` warning --- src/vt/collective/reduce/reduce.impl.h | 3 ++- src/vt/vrt/collection/manager.impl.h | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/vt/collective/reduce/reduce.impl.h b/src/vt/collective/reduce/reduce.impl.h index 3ccc36ffe7..c8c571ab48 100644 --- a/src/vt/collective/reduce/reduce.impl.h +++ b/src/vt/collective/reduce/reduce.impl.h @@ -165,7 +165,8 @@ detail::ReduceStamp Reduce::reduceImmediate( envelopeSetGroup(msg->env, std::get(scope_.get()).get()); } - auto cur_id = id == detail::ReduceStamp{} ? generateNextID() : id; + auto default_stamp = detail::ReduceStamp{}; + auto cur_id = id == default_stamp ? generateNextID() : id; auto const han = auto_registry::makeAutoHandler(); msg->combine_handler_ = han; diff --git a/src/vt/vrt/collection/manager.impl.h b/src/vt/vrt/collection/manager.impl.h index 91e914fa97..f03d60fa9f 100644 --- a/src/vt/vrt/collection/manager.impl.h +++ b/src/vt/vrt/collection/manager.impl.h @@ -921,7 +921,8 @@ messaging::PendingSend CollectionManager::reduceMsgExpr( vtAssert(group_ready, "Must be ready"); auto cur_stamp = stamp; - if (cur_stamp == ReduceStamp{}) { + auto default_stamp = ReduceStamp{}; + if (cur_stamp == default_stamp) { cur_stamp = proxy(idx).tryGetLocalPtr()->getNextStamp(); }