مشاركة عبر


الدالة MPI_Win_allocate

إنشاء كائن نافذة MPI الذي يخصص الذاكرة.

بناء الجملة

int MPIAPI MPI_Win_allocate(
        MPI_Aint size,
        int      disp_unit,
        MPI_Info info,
        MPI_Comm comm,
  _Out_ void     *baseptr,
  _Out_ MPI_Win  *win
);

المعلمات

  • size
    حجم نافذة الذاكرة بالبايت.

  • disp_unit
    حجم الوحدة المحلية للإزاحات بالبايت.

  • معلومات
    وسيطة المعلومات.

  • الاتصالات
    Communicator.

  • baseptr [out]
    العنوان الأولي لنافذة الذاكرة.

  • win [out]
    كائن النافذة الذي تم إرجاعه بواسطة الاستدعاء.

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

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

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

Fortran

    MPI_WIN_ALLOCATE(SIZE, DISP_UNIT, INFO, COMM, BASEPTR, WIN, IERROR)
        <type> BASEPTR(*)
        INTEGER(KIND=MPI_ADDRESS_KIND) SIZE
        INTEGER DISP_UNIT, INFO, COMM, WIN, IERROR

الملاحظات

هذا استدعاء جماعي تنفذه جميع العمليات في مجموعة comm. في كل عملية، يخصص ذاكرة بحجم بايت على الأقل، ويعيد مؤشرا إليه، ويعيد كائن نافذة يمكن استخدامه من قبل جميع العمليات في comm لتنفيذ عمليات RMA. تتكون الذاكرة التي تم إرجاعها من وحدات البايت الحجم المحلية لكل عملية، بدءا من baseptr العنوان وتقترن بالنافذة كما لو كان المستخدم يستدعي MPI_Win_create على الذاكرة الموجودة. قد تختلف وسيطة الحجم في كل عملية وحجم = 0 صالح؛ ومع ذلك، قد تخصص المكتبة المزيد من الذاكرة وتعرضها لإنشاء تخصيص سريع ومتماثل عالميا.

المتطلبات

منتج

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