Мой вопрос довольно прост, определение функции MPI_Scatter:
#include <mpi.h>
void MPI::Comm::Scatter(const void* sendbuf, int sendcount,
const MPI::Datatype& sendtype, void* recvbuf,
int recvcount, const MPI::Datatype& recvtype,
int root) const
Являются ли «sendcount» и «sendtype» избыточными? В каком случае это может произойти: sendcount!=recvcount?
Изменить: возможно, необходимы некоторые разъяснения по этому вопросу. Я понимаю, что, возможно, причина в том, что для корня данные представляют собой некоторую «структуру X», а для получателей — некоторую «структуру Y», что как-то тоже имеет смысл (все подходит «ОК»).
Если это так... Я не понимаю, зачем нужно еще раз говорить, что общий размер ожидаемых данных для получения такой же, как и размер отправленных данных. Если это просто вопрос представления данных, я бы сделал только приведение. На самом деле буфер представляет собой (void*).