Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Erstellt ein MPI Window-Objekt, das Arbeitsspeicher zuweist. Auf zugeordneten Arbeitsspeicher kann von allen Prozessen in der Gruppe des Fensters mit Anweisungen zum direkten Laden/Speichern zugegriffen werden.
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
);
Parameter
size
Größe des Speicherfensters in Bytes.disp_unit
Lokale Einheitsgröße für Verschiebungen in Bytes.info
Info-Argument.comm
Innerhalb des Kommunikators.baseptr [out]
Adresse des lokal zugeordneten Fenstersegments.win [out]
Vom Aufruf zurückgegebenes Window-Objekt.
Rückgabewert
Gibt MPI_SUCCESS nach Erfolg zurück. Andernfalls ist der Rückgabewert ein Fehlercode.
In Fortran wird der Rückgabewert im IERROR-Parameter gespeichert.
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
Hinweise
Dies ist ein kollektiver Aufruf, der von allen Prozessen in der Gruppe von comm ausgeführt wird. Bei jedem Prozess wird Arbeitsspeicher von mindestens Bytes zugeordnet, der von allen Prozessen in comm gemeinsam genutzt wird, und gibt einen Zeiger auf das lokal zugeordnete Segment in baseptr zurück, der für Lade-/Speicherzugriffe auf den aufrufenden Prozess verwendet werden kann. Der lokal zugeordnete Arbeitsspeicher kann das Ziel von Lade-/Speicherzugriffen durch Remoteprozesse sein. Die Basiszeiger für andere Prozesse können mithilfe der Funktion MPI_Win_shared_query abgefragt werden. Der Aufruf gibt auch ein Fensterobjekt zurück, das von allen Prozessen in comm zum Ausführen von RMA-Vorgängen verwendet werden kann. Das Size-Argument kann bei jedem Prozess unterschiedlich sein, und größe = 0 ist gültig. Es liegt in der Verantwortung des Benutzers sicherzustellen, dass der Communicator comm eine Gruppe von Prozessen darstellt, die ein freigegebenes Speichersegment erstellen können, auf das alle Prozesse in der Gruppe zugreifen können.
Anforderungen
Produkt |
HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package oder HPC Pack 2008 Client Utilities |
Header |
Mpi.h; Mpif.h |
Bibliothek |
Msmpi.lib |
DLL |
Msmpi.dll |