مشاركة عبر


MPI_Grequest_start الدالة

إنشاء طلب معرف من قبل المستخدم وإرجاعه.

بناء الجملة

int MPIAPI MPI_Grequest_start(
  _In_     MPI_Grequest_query_function  *query_fn,
  _In_     MPI_Grequest_free_function   *free_fn,
  _In_     MPI_Grequest_cancel_function *cancel_fn,
  _In_opt_ void                         *extra_state,
  _Out_    MPI_Request                  *request
);

المعلمات

  • query_fn [in]
    يتم استدعاء دالة رد الاتصال عند الاستعلام عن حالة الطلب.

  • free_fn [in]
    يتم استدعاء دالة رد الاتصال عند تحرير الطلب.

  • cancel_fn [in]
    يتم استدعاء دالة رد الاتصال عند إلغاء الطلب.

  • extra_state [في، اختياري]
    تم تمرير حالة إضافية إلى الدالات أعلاه.

  • طلب [خارج]
    طلب معمم.

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

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

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

Fortran

    MPI_GREQUEST_START(QUERY_FN, FREE_FN, CANCEL_FN, EXTRA_STATE, REQUEST, IERROR)
        INTEGER REQUEST, IERROR
        EXTERNAL QUERY_FN, FREE_FN, CANCEL_FN
        INTEGER (KIND=MPI_ADDRESS_KIND) EXTRA_STATE

الملاحظات

يجب أن تكون قيم الإرجاع من دالات رد الاتصال رمز خطأ MPI أو فئة صالحة. قد تكون هذه القيمة إما القيمة المرجعة من أي روتين MPI (باستثناء واحد ملاحظ أدناه) أو أي من فئات خطأ MPI. بالنسبة للبرامج المحمولة، يمكن استخدام MPI_ERR_OTHER ؛ لتوفير معلومات أكثر تحديدا، قم بإنشاء فئة خطأ MPI جديدة أو تعليمة برمجية مع MPI_Add_error_class أو MPI_Add_error_code وإرجاع تلك القيمة.

معيار MPI غير واضح على قيم الإرجاع من إجراءات رد الاتصال. ومع ذلك، هناك ملاحظات في المعيار تشير إلى أن هذه هي رموز خطأ MPI. على سبيل المثال، تتطلب الصفحات من 169 السطر 46 إلى الصفحة 170، السطر 1 أن تقوم free_fn بإرجاع رمز خطأ MPI الذي يمكن استخدامه في وظائف إكمال MPI عند إرجاع MPI_ERR_IN_STATUS.

الحالة الخاصة الواحدة هي قيمة الخطأ التي يتم إرجاعها بواسطة MPI_Comm_dup عندما يرجع روتين رد اتصال السمة فشلا. معيار MPI غير واضح بشأن القيم التي يمكن استخدامها للإشارة إلى إرجاع خطأ. علاوة على ذلك، استخدمت مجموعة اختبار Intel MPI قيما غير صفرية للإشارة إلى الفشل، وتوقعت إرجاع هذه القيم بواسطة MPI_Comm_dup عندما واجهت إجراءات السمة خطأ. قد لا تكون قيم الخطأ هذه رموز خطأ MPI أو فئات صحيحة. لهذا السبب، تقع على عاتق المستخدم مسؤولية إما استخدام رموز خطأ MPI صالحة في المقابل من عمليات رد اتصال السمة، إذا كان سيتم إرجاع رموز الخطأ هذه بواسطة رد اتصال طلب معمم، أو الكشف عن رموز الخطأ هذه وتحويلها إلى رموز خطأ MPI صالحة (تذكر أن فئات خطأ MPI هي رموز خطأ صالحة).

المتطلبات

منتج

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

MPI_Grequest_query_function

MPI_Grequest_free_function

MPI_Grequest_cancel_function