diff --git a/configure.ac b/configure.ac index 22b3943..0766efe 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ dnl Copyright (c) 2009 Cisco Systems, Inc. All rights reserved. -dnl Copyright (c) 2020-2022 High-Performance Computing Center Stuttgart, +dnl Copyright (c) 2020-2025 High-Performance Computing Center Stuttgart, dnl University of Stuttgart. All rights reserved. dnl Process this file with autoconf to produce a configure script. @@ -52,6 +52,13 @@ AS_IF([test "$enable_mpi2_dynamic" = "yes"],[ AC_DEFINE([HAVE_MPI2_DYNAMIC], [1], [Define to enable MPI2 dynamic process management tests]) ]) +AC_ARG_ENABLE([mpi4-partitioned-p2p], + AS_HELP_STRING([--enable-mpi4-partitioned-p2p], [Build tests for MPI4 partitioned P2P [[default=yes]]]),, + [enable_mpi4_partitioned_p2p=yes]) +AS_IF([test "$enable_mpi4_partitioned_p2p" = "yes"],[ + AC_DEFINE([HAVE_MPI4_PARTITIONED_P2P], [1], [Define to enable MPI4 partitioned P2P tests]) +]) + dnl Checks for header files and compiler characteristics. AC_C_CONST diff --git a/threaded/tst_threaded_ring_partitioned.c b/threaded/tst_threaded_ring_partitioned.c index f0459c7..4caee8d 100644 --- a/threaded/tst_threaded_ring_partitioned.c +++ b/threaded/tst_threaded_ring_partitioned.c @@ -9,6 +9,7 @@ * * Date: July 19th 2023 */ + #include #include "mpi_test_suite.h" #include "tst_threads.h" @@ -17,6 +18,8 @@ #include +#ifdef HAVE_MPI4_PARTITIONED_P2P + #define TST_RANK_MASTER 0 static pthread_barrier_t thread_barrier; @@ -236,3 +239,5 @@ int tst_threaded_ring_partitioned_cleanup(struct tst_env *env) return 0; } + +#endif /* HAVE_MPI4_PARTITIONED_P2P */ diff --git a/threaded/tst_threaded_ring_partitioned_many_to_one.c b/threaded/tst_threaded_ring_partitioned_many_to_one.c index ffb5595..478e6e3 100644 --- a/threaded/tst_threaded_ring_partitioned_many_to_one.c +++ b/threaded/tst_threaded_ring_partitioned_many_to_one.c @@ -10,6 +10,7 @@ * * Date: July 19th 2023 */ + #include #include "mpi_test_suite.h" #include "tst_threads.h" @@ -20,6 +21,8 @@ #define TST_RANK_MASTER 0 +#ifdef HAVE_MPI4_PARTITIONED_P2P + static pthread_barrier_t thread_barrier; static int ratio_send_to_receive = 4; @@ -246,3 +249,5 @@ int tst_threaded_ring_partitioned_many_to_one_cleanup(struct tst_env *env) return 0; } + +#endif /* HAVE_MPI4_PARTITIONED_P2P */ diff --git a/tst_tests.c b/tst_tests.c index 947b489..eac888b 100644 --- a/tst_tests.c +++ b/tst_tests.c @@ -1377,6 +1377,7 @@ static struct tst_test tst_tests[] = { &tst_threaded_comm_dup_init, &tst_threaded_comm_dup_run, &tst_threaded_comm_dup_cleanup}, +#ifdef HAVE_MPI4_PARTITIONED_P2P {TST_CLASS_THREADED, "Threaded ring partitioned", TST_MPI_COMM_SELF | TST_MPI_INTRA_COMM, 1, @@ -1392,6 +1393,8 @@ static struct tst_test tst_tests[] = { TST_MODE_RELAXED, TST_NONE, &tst_threaded_ring_partitioned_many_to_one_init, &tst_threaded_ring_partitioned_many_to_one_run, &tst_threaded_ring_partitioned_many_to_one_cleanup}, +#endif /* HAVE_MPI4_PARTITIONED_P2P */ + #endif {TST_CLASS_UNSPEC, "None",