Skip to content

Commit a66dc81

Browse files
GuillaumeMercierbosilca
authored andcommitted
Check if topo weighted in case of partially distrib case
1 parent 8a7f0ba commit a66dc81

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

ompi/mca/topo/treematch/topo_treematch_dist_graph_create.c

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -714,12 +714,14 @@ int mca_topo_treematch_dist_graph_create(mca_topo_base_module_t* topo_module,
714714
local_pattern = (double *)calloc(num_procs_in_node, sizeof(double));
715715
}
716716
/* Extract the local communication pattern */
717-
for(i = 0; i < topo->indegree; i++)
718-
if (grank_to_lrank[topo->in[i]] != -1)
719-
local_pattern[grank_to_lrank[topo->in[i]]] += topo->inw[i];
720-
for(i = 0; i < topo->outdegree; i++)
721-
if (grank_to_lrank[topo->out[i]] != -1)
722-
local_pattern[grank_to_lrank[topo->out[i]]] += topo->outw[i];
717+
if( true == topo->weighted ) {
718+
for(i = 0; i < topo->indegree; i++)
719+
if (grank_to_lrank[topo->in[i]] != -1)
720+
local_pattern[grank_to_lrank[topo->in[i]]] += topo->inw[i];
721+
for(i = 0; i < topo->outdegree; i++)
722+
if (grank_to_lrank[topo->out[i]] != -1)
723+
local_pattern[grank_to_lrank[topo->out[i]]] += topo->outw[i];
724+
}
723725
if (OMPI_SUCCESS != (err = localcomm->c_coll->coll_gather((rank == lindex_to_grank[0] ? MPI_IN_PLACE : local_pattern),
724726
num_procs_in_node, MPI_DOUBLE,
725727
local_pattern, num_procs_in_node, MPI_DOUBLE,

0 commit comments

Comments
 (0)