1 /* Copyright (c) 2013-2014. The SimGrid Team.
2 * All rights reserved. */
4 /* This program is free software; you can redistribute it and/or modify it
5 * under the terms of the license (GNU LGPL) which comes with this package. */
7 #include "colls_private.h"
9 // Allgather - gather/bcast algorithm
10 int smpi_coll_tuned_allgatherv_GB(void *send_buff, int send_count,
11 MPI_Datatype send_type, void *recv_buff,
12 int *recv_counts, int *recv_disps, MPI_Datatype recv_type,
15 smpi_mpi_gatherv(send_buff, send_count, send_type, recv_buff, recv_counts,
16 recv_disps, recv_type, 0, comm);
17 int num_procs, i, current, max = 0;
18 num_procs = smpi_comm_size(comm);
19 for (i = 0; i < num_procs; i++) {
20 current = recv_disps[i] + recv_counts[i];
24 mpi_coll_bcast_fun(recv_buff, max, recv_type, 0, comm);