MPI_Compare_and_swap işlevi

Uzak atomik karşılaştırma ve değiştirme işlemi gerçekleştirir.

Söz dizimi

int MPIAPI MPI_Compare_and_swap(
  _In_  void         *origin_addr,
  _In_  void         *compare_addr,
  _Out_ void         *result_addr,
        MPI_Datatype datatype,
        int          target_rank,
        MPI_Aint     target_disp,
        MPI_Win      win
);

Parametreler

  • origin_addr [in]
    arabelleğin ilk adresi

  • compare_addr [in]
    comparebuffer'ın ilk adresi

  • result_addr [out]
    sonuç arabelleğinin ilk adresi

  • Datatype
    tüm arabelleklerdeki her girişin veri türü

  • target_rank
    hedefin sırası

  • target_disp
    pencerenin başından hedef arabelleğin başına kadar yer değiştirme

  • Kazanmak
    pencere nesnesi

Döndürülen değer

Başarılı MPI_SUCCESS döndürür. Aksi takdirde, dönüş değeri bir hata kodudur.

Fortran'da, dönüş değeri IERROR parametresinde depolanır.

Fortran

    MPI_COMPARE_AND_SWAP(ORIGIN_ADDR, COMPARE_ADDR, RESULT_ADDR,
                DATATYPE, TARGET_RANK, TARGET_DISP, WIN, IERROR)
        <type> ORIGIN_ADDR(*), COMPARE_ADDR(*), RESULT_ADDR(*)
        INTEGER(KIND=MPI_ADDRESS_KIND) TARGET_DISP
        INTEGER DATATYPE, TARGET_RANK, WIN, IERROR

Açıklamalar

Bu işlev, karşılaştırma arabelleği compare_addr veri türündeki bir öğeyi target_rank tarafından belirtilen hedef penceredeki uzaklık target_disp olan arabellekle karşılaştırır ve hedefteki değeri, karşılaştırma arabelleği ile hedef arabelleği aynıysa origin_addr kaynak arabelleğindeki değerle değiştirir. Hedefteki özgün değer arabellek result_addr döndürülür. Parametre veri türü, şu önceden tanımlanmış veri türleri kategorilerinden birine ait olmalıdır: C tamsayısı, Fortran tamsayısı, Mantıksal, Çok dilli türler veya Bayt. Kaynak ve sonuç arabellekleri (origin_addr ve result_addr) kopuk olmalıdır.

Gereksinimler

Ürün

HPC Pack 2012 MS-MPI Yeniden Dağıtılabilir Paketi, HPC Pack 2008 R2 MS-MPI Yeniden Dağıtılabilir Paketi, HPC Pack 2008 MS-MPI Yeniden Dağıtılabilir Paketi veya HPC Pack 2008 İstemci Yardımcı Programları

Üst bilgi

Mpi.h; Mpif.h

Kitaplık

Msmpi.lib

DLL

Msmpi.dll

Ayrıca bkz.

MPI One-Sided İletişim İşlevleri