Dela via


funktionen MPI_Win_allocate_shared

Skapar ett MPI-fönsterobjekt som allokerar minne, allokerat minne kan nås från alla processer i fönstrets grupp med instruktioner för direkt inläsning/lagring.

Syntax

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
);

Parametrar

  • Storlek
    Storleken på minnesfönstret i byte.

  • disp_unit
    Lokal enhetsstorlek för deplacement, i byte.

  • Information om
    Infoargument.

  • Comm
    Intrakommunikator.

  • baseptr [ut]
    Adress för det lokala allokerade fönstersegmentet.

  • win [out]
    Fönsterobjekt som returneras av anropet.

Returvärde

Returnerar MPI_SUCCESS vid lyckat resultat. Annars är returvärdet en felkod.

I Fortran lagras returvärdet i parametern 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

Kommentarer

Det här är ett kollektivt anrop som körs av alla processer i gruppen med kommatecken. På varje process allokerar den minne av minst storleksbyte som delas mellan alla processer i kommatecken och returnerar en pekare till det lokalt allokerade segmentet i baseptr som kan användas för åtkomst till belastning/lagring i anropsprocessen. Lokalt allokerat minne kan vara målet för belastnings-/lagringsåtkomster via fjärrprocesser. baspekarna för andra processer kan efterfrågas med hjälp av funktionen MPI_Win_shared_query. Anropet returnerar också ett fönsterobjekt som kan användas av alla processer i kommatecken för att utföra RMA-åtgärder. Storleksargumentet kan vara olika vid varje process och storleken = 0 är giltig. Det är användarens ansvar att se till att kommunikationskommorna representerar en grupp processer som kan skapa ett segment för delat minne som kan nås av alla processer i gruppen.

Krav

Produkt

HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package eller HPC Pack 2008 Client Utilities

Huvud

Mpi.h; Mpif.h

Bibliotek

Msmpi.lib

DLL

Msmpi.dll

Se även

MPI One-Sided Communications Functions