MPI_Iscatter fungsi
Menyebarkan data dari satu anggota di semua anggota grup dengan cara yang tidak memblokir. Fungsi ini melakukan inversi operasi yang dilakukan oleh fungsi MPI_Igather.
Sintaks
int MPIAPI MPI_Iscatter(
_In_opt_ const void *sendbuf,
_In_ int sendcount,
_In_ MPI_Datatype sendtype,
_Out_opt_ void *recvbuf,
_In_ int recvcount,
_In_ MPI_Datatype recvtype,
_In_ int root,
_In_ MPI_Comm comm,
_Out_ MPI_Request *request
);
Parameter
sendbuf [in, opsional]
Penunjuk ke buffer yang berisi data yang akan dikirim ke proses akar.Parameter ini diabaikan untuk semua proses non-root.
Jika parameter comm mereferensikan intracommunicator, Anda dapat menentukan opsi di tempat dengan menentukan MPI_IN_PLACE dalam proses root. Parameter recvcount dan recvtype diabaikan. Vektor yang tersebar masih dianggap berisi segmen n , di mana n adalah ukuran grup; segmen yang sesuai dengan proses akar tidak dipindahkan.
sendcount [in]
Jumlah elemen dalam buffer kirim. Jika sendcount adalah nol, bagian data dari pesan kosong.Parameter ini diabaikan untuk semua proses non-root.
sendtype [in]
Jenis data setiap elemen dalam buffer.Parameter ini diabaikan untuk semua proses non-root.
recvbuf [keluar, opsional]
Handel ke buffer yang berisi data yang diterima pada setiap proses. Jumlah dan jenis data elemen dalam buffer ditentukan dalam parameter recvcount dan recvtype .recvcount [in]
Jumlah elemen dalam penyangga penerima. Jika jumlahnya nol, bagian data dari pesan kosong.recvtype [in]
Jenis data MPI dari elemen dalam buffer penerima.root [in]
Peringkat proses penerimaan dalam komunikator yang ditentukan.comm [in]
Pegangan MPI_Comm komunikator.request [out]
Handel MPI_Request mewakili operasi komunikasi.
Nilai kembali
Mengembalikan MPI_SUCCESS pada keberhasilan. Jika tidak, nilai yang dikembalikan adalah kode kesalahan.
Di Fortran, nilai yang dikembalikan disimpan dalam parameter IERROR .
Fortran
MPI_ISCATTER(SENDBUF, SENDCOUNT, SENDTYPE, RECVBUF, RECVCOUNT, RECVTYPE, ROOT, COMM, REQUEST, IERROR)
<type> SENDBUF(*), RECVBUF(*)
INTEGER SENDCOUNT, SENDTYPE, RECVCOUNT, RECVTYPE, ROOT, COMM, REQUEST, IERROR
Keterangan
Panggilan non-pemblokiran memulai operasi pengurangan kolektif yang harus diselesaikan dalam panggilan penyelesaian terpisah. Setelah dimulai, operasi dapat berkembang secara independen dari komputasi atau komunikasi lainnya pada proses yang berpartisipasi. Dengan cara ini, operasi pengurangan non-pemblokiran dapat mengurangi kemungkinan sinkronisasi efek operasi pengurangan dengan menjalankannya di "latar belakang."
Semua panggilan penyelesaian (misalnya, MPI_Wait) didukung untuk operasi pengurangan non-pemblokiran.
Persyaratan
Produk |
Microsoft MPI v7 |
Header |
Mpi.h; Mpif.h |
Pustaka |
Msmpi.lib |
DLL |
Msmpi.dll |