From f601168afb00f4b8b5d248df1a072c17ffcd91a8 Mon Sep 17 00:00:00 2001 From: Augustin Degomme Date: Tue, 16 Sep 2014 14:44:45 +0200 Subject: [PATCH] don't set knomial factor for reduce, have it be computed at runtime --- src/smpi/colls/reduce-mvapich-knomial.c | 13 +++++++++++++ src/smpi/colls/smpi_mvapich2_selector_stampede.h | 4 ++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/smpi/colls/reduce-mvapich-knomial.c b/src/smpi/colls/reduce-mvapich-knomial.c index c5dc90882c..be7f303a34 100644 --- a/src/smpi/colls/reduce-mvapich-knomial.c +++ b/src/smpi/colls/reduce-mvapich-knomial.c @@ -40,6 +40,10 @@ #include "colls_private.h" extern int mv2_reduce_intra_knomial_factor; +extern int mv2_reduce_inter_knomial_factor; + +#define SMPI_DEFAULT_KNOMIAL_FACTOR 4 + // int mv2_reduce_knomial_factor = 2; @@ -154,6 +158,15 @@ int smpi_coll_tuned_reduce_mvapich2_knomial ( } + if(mv2_reduce_intra_knomial_factor<0) + { + mv2_reduce_intra_knomial_factor = SMPI_DEFAULT_KNOMIAL_FACTOR; + } + if(mv2_reduce_inter_knomial_factor<0) + { + mv2_reduce_inter_knomial_factor = SMPI_DEFAULT_KNOMIAL_FACTOR; + } + MPIR_Reduce_knomial_trace(root, mv2_reduce_intra_knomial_factor, comm, &dst, &expected_send_count, &expected_recv_count, &src_array); diff --git a/src/smpi/colls/smpi_mvapich2_selector_stampede.h b/src/smpi/colls/smpi_mvapich2_selector_stampede.h index 65796c2c1b..d9824005a9 100644 --- a/src/smpi/colls/smpi_mvapich2_selector_stampede.h +++ b/src/smpi/colls/smpi_mvapich2_selector_stampede.h @@ -1259,8 +1259,8 @@ int mv2_size_reduce_tuning_table = 0; mv2_reduce_tuning_table *mv2_reduce_thresholds_table = NULL; -int mv2_reduce_intra_knomial_factor = 2; -int mv2_reduce_inter_knomial_factor = 2; +int mv2_reduce_intra_knomial_factor = -1; +int mv2_reduce_inter_knomial_factor = -1; int (*MV2_Reduce_function)( void *sendbuf, void *recvbuf, -- 2.20.1