مشاركة عبر


MPI_Compare_and_swap الدالة

ينفذ عملية مقارنة ذرية عن بعد ومبادلة.

بناء الجملة

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
);

المعلمات

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

  • compare_addr [in]
    العنوان الأولي لأداة المقارنة

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

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

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

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

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

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

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

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

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

الملاحظات

تقارن هذه الدالة عنصرا واحدا من نوع نوع نوع البيانات في compare_addr مقارنة المخزن المؤقت مع المخزن المؤقت عند target_disp الإزاحة في النافذة الهدف المحددة بواسطة target_rankوتفوز وتستبدل القيمة في الهدف بالقيمة في المخزن المؤقت الأصلي origin_addr إذا كان المخزن المؤقت المقارن والمخزن المؤقت الهدف متطابقين. يتم إرجاع القيمة الأصلية في الهدف في المخزن المؤقت result_addr. يجب أن ينتمي نوع بيانات المعلمة إلى إحدى الفئات التالية من أنواع البيانات المعرفة مسبقا: C integer أو Fortran integer أو Logical أو Multi-language types أو Byte. يجب أن تكون المخازن المؤقتة الأصل والنتيجة (origin_addrresult_addr) مفككة.

المتطلبات

منتج

حزمة 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