Aracılığıyla paylaş


MPI_Ireduce işlevi

Bir grubun tüm üyeleri arasında engellemesiz bir şekilde genel azaltma işlemi (örneğin toplam, maksimum veya mantıksal ve) gerçekleştirir.

Sözdizimi

int MPIAPI MPI_Ireduce(
  _In_      void         *sendbuf,
  _Out_opt_ void         *recvbuf,
  _In_      int          count,
  _In_      MPI_Datatype datatype,
  _In_      MPI_Op       op,
  _In_      int          root,
  _In_      MPI_Comm     comm,
  _Out_     MPI_Request  *request
);

Parametre

  • sendbuf [in]
    Azaltmada kullanılacak bu derecelendirmedeki verileri içeren bir arabelleğe yönelik işaretçi. Arabellek, veri türü tanıtıcısı tarafından belirtilen MPI_Datatype ardışık öğeleri
    sayıdan oluşur. İleti uzunluğu, bayt sayısı değil, öğe sayısı bakımından belirtilir.

  • recvbuf [out, optional]
    Azaltma işleminin sonucunu almak için arabelleğe yönelik işaretçi. Bu parametre yalnızca kök işlemde önemlidir.

  • sayısı [in]
    Bu işlemden gönderilecek öğe sayısı.

  • veri türü [in]
    sendbufiçindeki her öğenin veri türünü temsil eden MPI_Datatype tanıtıcısı.

  • işlem [in]
    Gerçekleştirilecek genel azaltma işlemini gösteren MPI_Op tanıtıcısı. Tanıtıcı yerleşik veya uygulama tanımlı bir işlemi gösterebilir. Önceden tanımlanmış işlemlerin listesi için MPI_Op konusuna bakın.

  • kök [in]
    MPI_Commcommiçindeki alma işleminin sırası.

  • comm [in]
    MPI_Comm iletişimci tutamacı.

  • istek [out]
    İletişim işlemini temsil eden MPI_Request tanıtıcısı..

Dönüş değeri

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_IREDUCE(SENDBUF, RECVBUF, COUNT, DATATYPE, OP, ROOT, COMM, REQUEST, IERROR) 
        <type> SENDBUF(*), RECVBUF(*) 
        INTEGER COUNT, DATATYPE, OP, ROOT, COMM, REQUEST, IERROR

Açıklamalar

Engelleyici olmayan bir çağrı, ayrı bir tamamlama çağrısında tamamlanması gereken bir toplu azaltma işlemi başlatır. İşlem başlatıldıktan sonra, katılan işlemlerdeki tüm hesaplamalardan veya diğer iletişimlerden bağımsız olarak ilerleyebilir. Bu şekilde engelleyici olmayan azaltma işlemleri, azaltma işlemlerini "arka planda" çalıştırarak olası eşitleme etkilerini azaltabilir.

Engelleyici olmayan azaltma işlemleri için tüm tamamlama çağrıları (örneğin, MPI_Wait) desteklenir.

Gereksinim -leri

Ürün

Microsoft MPI v6

Üstbilgi

Mpi.h; Mpif.h

Kütüphane

Msmpi.lib

DLL

Msmpi.dll

Ayrıca bkz.

MPI Kolektif İşlevleri

MPI_Datatype

MPI_Op

MPI_Reduce

MPI_Test

MPI_Testall

MPI_Testany

MPI_Testsome

MPI_Wait

MPI_Waitall

MPI_Waitany

MPI_Waitsome