Коллоквиум сұрақтары жауаптары (2) (копия). Коллоквиум сратары
Скачать 2 Mb.
|
Параметрыsendbuf [в] Указатель на буфер, содержащий данные, которые будут отправлены корневому процессу. Если параметр связи ссылается на внутрикоммуникатор, вы можете указать параметр на месте, указав MPI_IN_PLACE во всех процессах. Параметры sendcount и sendtype игнорируются. Каждый процесс вводит данные в соответствующий элемент буфера приема. n- й процесс отправляет данные в n-й элемент буфера приема. Предполагается, что данные, отправляемые корневым процессом, находятся в правильном месте в буфере приема. количество отправок Количество элементов в буфере отправки. Если число отправлений равно нулю, часть данных в сообщении пуста. тип отправки Тип данных каждого элемента в буфере. recvbuf [выход, необязательно] Указатель на буфер корневого процесса, содержащий данные, полученные от каждого процесса. Он включает в себя данные, которые отправляются корневым процессом. Этот параметр имеет значение только для корневого процесса. Параметр recvbuf игнорируется для всех некорневых процессов. пересчет Количество элементов, полученных от каждого процесса. Это число не является общим количеством элементов в буфере. Если количество равно нулю, то часть данных в сообщении пуста. Этот параметр важен только для корневого процесса. recvtype Тип данных MPI каждого элемента в буфере. Этот параметр имеет значение только для корневого процесса. корень Ранг процесса приема в пределах указанного коммуникатора. связь Дескриптор коммуникатора MPI_Comm. Возвращаемое значениеВозвращает MPI_SUCCESS при успешном выполнении. В противном случае возвращаемое значение является кодом ошибки. В Fortran возвращаемое значение сохраняется в параметре IERROR. Функция MPI_GathervСобирает переменные данные от всех членов группы до одного члена. Функция MPI_Gatherv добавляет гибкости функции MPI_Gather, позволяя изменять количество данных от каждого процесса. int MPIAPI MPI_Gatherv( _In_ void *sendbuf, int sendcount, MPI_Datatype sendtype, _Out_opt_ void *recvbuf, _In_opt_ int *recvcounts[], _In_opt_ int *displs[], MPI_Datatype recvtype, int root, MPI_Comm comm ); Параметрыsendbuf [в] Дескриптор буфера, содержащего данные, которые будут отправлены корневому процессу. Если параметр связи ссылается на внутрикоммуникатор, вы можете указать параметр на месте, указав MPI_IN_PLACE во всех процессах. Параметры sendcount и sendtype игнорируются. Каждый процесс вводит данные в соответствующий элемент буфера приема. n- й процесс отправляет данные в n-й элемент буфера приема. Предполагается, что данные, отправляемые корневым процессом, находятся в правильном месте в буфере приема. количество отправок Количество элементов в буфере отправки. Если число отправлений равно нулю, часть данных в сообщении пуста. тип отправки Тип данных каждого элемента в буфере. recvbuf [выход, необязательно] Дескриптор буфера в корневом процессе, который содержит данные, полученные от каждого процесса, включая данные, отправленные корневым процессом. Этот параметр имеет значение только для корневого процесса. Параметр recvbuf игнорируется для всех некорневых процессов. recvcounts[] [в, необязательно] Количество элементов, полученных от каждого процесса. Каждый элемент в массиве соответствует рангу процесса отправки. Если количество равно нулю, то часть данных в сообщении пуста. Этот параметр имеет значение только для корневого процесса. отображает[] [в, необязательно] Расположение относительно параметра recvbuf данных от каждого процесса коммуникатора. Данные, полученные от процесса j, помещаются в буфер приема корневого процесса и выводят элементы[j] из указателя sendbuf. В массивах параметров recvbuf, recvcountsи displs n-й элемент каждого массива ссылается на данные, полученные от n-го процесса коммуникатора. Этот параметр важен только для корневого процесса. recvtype Тип данных каждого элемента в буфере. Этот параметр важен только для корневого процесса. корень Ранг процесса приема в пределах указанного коммуникатора. связь Дескриптор коммуникатора MPI_Comm. |