Bagikan melalui


fungsi MPI_Win_allocate_shared

Membuat objek Jendela MPI yang mengalokasikan memori, memori yang dialokasikan dapat diakses dari semua proses dalam grup jendela dengan instruksi beban/penyimpanan langsung.

Sintaks

int MPIAPI MPI_Win_allocate_shared(
        MPI_Aint size,
        int      disp_unit,
        MPI_Info info,
        MPI_Comm comm,
  _Out_ void     *baseptr,
  _Out_ MPI_Win  *win
);

Parameter

  • ukuran
    Ukuran jendela memori dalam byte.

  • disp_unit
    Ukuran unit lokal untuk displacement, dalam byte.

  • info
    Argumen info.

  • Comm
    Intra-communicator.

  • baseptr [keluar]
    Alamat segmen jendela yang dialokasikan lokal.

  • win [out]
    Objek jendela yang dikembalikan oleh panggilan.

Menampilkan nilai

Mengembalikan MPI_SUCCESS pada keberhasilan. Jika tidak, nilai yang dikembalikan adalah kode kesalahan.

Di Fortran, nilai pengembalian disimpan dalam parameter IERROR .

Fortran

    MPI_WIN_ALLOCATE_SHARED(SIZE, DISP_UNIT, INFO, COMM, BASEPTR, WIN, IERROR)
        <type> BASEPTR(*)
        INTEGER(KIND=MPI_ADDRESS_KIND) SIZE
        INTEGER DISP_UNIT, INFO, COMM, WIN, IERROR

Keterangan

Ini adalah panggilan kolektif yang dijalankan oleh semua proses dalam grup comm. Pada setiap proses, ia mengalokasikan memori setidaknya byte ukuran yang dibagikan di antara semua proses dalam komunikasi, dan mengembalikan penunjuk ke segmen yang dialokasikan secara lokal di baseptr yang dapat digunakan untuk akses beban/penyimpanan pada proses panggilan. Memori yang dialokasikan secara lokal dapat menjadi target akses beban/penyimpanan oleh proses jarak jauh; pointer dasar untuk proses lain dapat dikueri menggunakan fungsi MPI_Win_shared_query. Panggilan juga mengembalikan objek jendela yang dapat digunakan oleh semua proses dalam comm untuk melakukan operasi RMA. Argumen ukuran mungkin berbeda pada setiap proses dan ukuran = 0 valid. Pengguna bertanggung jawab untuk memastikan bahwa komunikasi mewakili sekelompok proses yang dapat membuat segmen memori bersama yang dapat diakses oleh semua proses dalam grup.

Persyaratan

Produk

Paket Redistributable HPC Pack 2012 MS-MPI, Paket HpC Pack 2008 R2 MS-MPI Redistributable, Paket HPC Pack 2008 MS-MPI Redistributable Package atau HpC Pack 2008 Client Utilities

Header

Mpi.h; Mpif.h

Pustaka

Msmpi.lib

DLL

Msmpi.dll

Lihat juga

Fungsi Komunikasi One-Sided MPI