Udostępnij za pośrednictwem


MPI_Win_lock, funkcja

Rozpoczyna epokę dostępu RMA w procesie docelowym.

Składnia

int MPIAPI MPI_Win_lock(
   int     lock_type,
   int     rank,
   int     assert,
   MPI_Win win
);

Parametry

  • lock_type
    Wskazuje, czy inne procesy mogą uzyskiwać dostęp do okna docelowego w tym samym czasie (jeśli MPI_LOCK_SHARED), czy też nie (MPI_LOCK_EXCLUSIVE).

  • Rank
    Ranga zablokowanego okna.

  • Assert
    Służy do optymalizowania tego wywołania; zero może być używane jako wartość domyślna.

  • Wygrać
    Obiekt okna.

Wartość zwracana

Zwraca MPI_SUCCESS po powodzeniu. W przeciwnym razie zwracana wartość jest kodem błędu.

W fortran wartość zwracana jest przechowywana w parametrze IERROR .

Fortran

    MPI_WIN_LOCK(LOCK_TYPE, RANK, ASSERT, WIN, IERROR)
        INTEGER LOCK_TYPE, RANK, ASSERT, WIN, IERROR

Uwagi

Nazwa tej procedury jest myląca. W szczególności ta procedura nie musi blokować, z wyjątkiem sytuacji, gdy proces docelowy jest procesem wywołującym.

Implementacje mogą ograniczać korzystanie z komunikacji RMA synchronizowanej przez wywołania blokady do okien w pamięci przydzielonej przez MPI_Alloc_mem. Blokady mogą być używane tylko w takiej pamięci.

Argument potwierdzenia służy do wskazywania specjalnych warunków ogrodzenia, których implementacja może użyć do optymalizacji operacji MPI_Win_fence . Wartość zero jest zawsze poprawna. Inne wartości asercji mogą być połączone ze sobą lub. Asercji, które są prawidłowe dla MPI_Win_fence , to:

  • MPI_MODE_NOCHECK — żaden inny proces nie zostanie zablokowany lub podejmie próbę uzyskania blokady powodującej konflikt, podczas gdy obiekt wywołujący przechowuje blokadę okna. Jest to przydatne, gdy wzajemne wykluczenie jest osiągane za pomocą innych środków, ale operacje spójności, które mogą być dołączone do blokady i odblokowywania wywołań, są nadal wymagane.

Wymagania

Produkt

Pakiet redystrybucyjny HPC Pack 2012 MS-MPI, pakiet redystrybucyjny HPC Pack 2008 R2 MS-MPI, pakiet redystrybucyjny HPC Pack 2008 MS-MPI lub narzędzia klienckie HPC Pack 2008

Nagłówek

Mpi.h; Mpif.h

Biblioteka

Msmpi.lib

DLL

Msmpi.dll

Zobacz też

MPI One-Sided Communications Functions