مشاركة عبر


دالة MPI_Fetch_and_op

ينفذ القراءة والتعديل والكتابة الذرية على عنصر واحد من البيانات، ويعيد عنصر البيانات قبل عملية التراكم.

بناء الجملة

int MPIAPI MPI_Fetch_and_op(
  _In_  void         *origin_addr,
  _Out_ void         *result_addr,
        MPI_Datatype datatype,
        int          target_rank,
        MPI_Aint     target_disp,
        MPI_Op       op,
        MPI_Win      win
);

المعلمات

  • origin_addr [in]
    العنوان الأولي للمخزن المؤقت

  • result_addr [خارج]
    العنوان الأولي للمخزن المؤقت للنتيجة

  • Datatype
    نوع البيانات لكل إدخال في الأصل والنتيجة والمخزن المؤقت الهدف

  • target_rank
    مرتبة الهدف

  • target_disp
    الإزاحة من بداية النافذة إلى بداية المخزن المؤقت الهدف

  • المرجع
    عملية التقليل

  • الفوز
    كائن النافذة

القيمة المُرجعة

إرجاع MPI_SUCCESS عند النجاح. وإلا، فإن القيمة المرجعة هي رمز خطأ.

في Fortran، يتم تخزين القيمة المرجعة في المعلمة IERROR .

Fortran

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

الملاحظات

تجميع عنصر واحد من نوع نوع البيانات من المخزن المؤقت الأصل (origin_addr) إلى المخزن المؤقت في target_disp الإزاحة، في النافذة الهدف المحددة بواسطة target_rankوالفوز، باستخدام عملية العملية والعودة في المخزن المؤقت للنتيجة result_addr محتوى المخزن المؤقت الهدف قبل التراكم.

يجب أن تكون المخازن المؤقتة الأصل والنتيجة (origin_addrresult_addr) مفككة. يمكن تحديد أي من العمليات المحددة مسبقا MPI_Reduce، بالإضافة إلى MPI_NO_OP أو MPI_REPLACE، على أنها عملية؛ لا يمكن استخدام الدالات المعرفة من قبل المستخدم. يجب أن تكون وسيطة نوع البيانات نوع بيانات محدد مسبقا. يتم تنفيذ العملية ذريا.

المتطلبات

منتج

حزمة HPC Pack 2012 MS-MPI القابلة لإعادة التوزيع، حزمة HPC Pack 2008 R2 MS-MPI القابلة لإعادة التوزيع، حزمة HPC Pack 2008 MS-MPI القابلة لإعادة التوزيع أو حزمة HPC Pack 2008 للعميل

الرأس

Mpi.h؛ Mpif.h

المكتبة

Msmpi.lib

Dll

Msmpi.dll

راجع أيضًا

MPI One-Sided Communications Functions