Bagikan melalui


MPI_Win_allocate fungsi

Membuat objek Jendela MPI yang mengalokasikan memori.

Sintaks

int MPIAPI MPI_Win_allocate(
        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 perpindahan, dalam byte.

  • info
    Argumen info.

  • Comm
    Communicator.

  • baseptr [out]
    Alamat awal jendela memori.

  • 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 yang dikembalikan disimpan dalam parameter IERROR .

Fortran

    MPI_WIN_ALLOCATE(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 , mengembalikan pointer ke dalamnya, dan mengembalikan objek jendela yang dapat digunakan oleh semua proses dalam comm untuk melakukan operasi RMA. Memori yang dikembalikan terdiri dari ukuran byte lokal untuk setiap proses, dimulai dari baseptr alamat dan dikaitkan dengan jendela seolah-olah pengguna disebut MPI_Win_create pada memori yang ada. Argumen ukuran mungkin berbeda pada setiap proses dan ukuran = 0 valid; namun, pustaka mungkin mengalokasikan dan mengekspos lebih banyak memori untuk membuat alokasi simetris yang cepat dan global.

Persyaratan

Produk

Paket HPC Pack 2012 MS-MPI Redistributable, HpC Pack 2008 R2 MS-MPI Redistributable Package, 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