Function all_gather
boost::mpi::all_gather — Gather the values stored at every process into vectors of values from each process.
Synopsis
template<typename T>
void all_gather(const communicator & comm, const T & in_value,
std::vector< T > & out_values);
template<typename T>
void all_gather(const communicator & comm, const T & in_value,
T * out_values);
template<typename T>
void all_gather(const communicator & comm, const T * in_values, int n,
std::vector< T > & out_values);
template<typename T>
void all_gather(const communicator & comm, const T * in_values, int n,
T * out_values);
Description
all_gather
- это коллективный алгоритм, который собирает значения, хранящиеся в каждом процессе, в вектор значений, индексируемых числом процесса, из которого они произошли. ТипT
значений может быть любым типом, который является сериализуемым или имеет связанный тип данных MPI.
Когда типT
имеет связанный тип данных MPI, эта процедура вызываетMPI_Allgather
для сбора значений.
Параметры: | comm
| Коммуникатор, над которым произойдет всесобрание. | in_value
| Значение, передаваемое каждым процессом. Для сбора массива значенийin_values указывает наn локальные значения, подлежащие передаче. | out_values
| Вектор или указатель на хранилище, который будет заполнен значениями каждого процесса, проиндексированными идентификационным номером процесса. Если это вектор, то вектор будет изменен соответствующим образом. |
|