التوزيع غير المتجانس للعمليات بين العقد باستخدام OpenMPI

StackOverflow https://stackoverflow.com//questions/22041271

سؤال

أنا أقوم بتشغيل بلدي القابل للتنفيذ مع OpenMPI على كتلة باستخدام Slurm برنامج إدارة الموارد. أرغب في إيجاد طريقة لتحديد عدد الإجراءات والعمليات التي يجب تعيينها لكل من العقد، حيث قد يكون عدد العمليات مختلفا عن كل عقدة.

مثال لتوضيح ما أبحث عنه: لنفترض أنني أريد تشغيل 7 عمليات على 3 عقود. ثم أريد أن أكون قادرا على قول شيء مثل: يجب أن يقوم العقدة 1 بتشغيل العملية برتبة N، والعقدة 2 و 3 يجب على كل تشغيل 3 من العمليات المتبقية.

لا يهمني العقدة البدنية هي العقدة 1، حيث أن جميع العقد متساوية على المجموعة التي أستخدمها. كما أنني لا أعرف مسبقا العقد التي سأحصل عليها من قبل Slurm، لذلك لا يمكنني تصديق أسماء العقد في HostFile. مثال في وثائق OpenMpi التي وجدتها من شأنها أن تحدد HostFile مثل هذا مثالي:

giveacodicetagpre.

ولكن لدي مشكلتان مع هذا النهج:

  1. أنا لا أعرف مسبقا أسماء AA، BB، CC من العقد.
  2. حتى لو كنت أعرفهم، فإن العملية على العقدة AA لا تملك بالضرورة المرتبة الصحيحة.
هل كانت مفيدة؟

المحلول

بفضل تعليق Hristo Iliev، وجدت الحل للمثال المذكورة في السؤال:

giveacodicetagpre.

انها قبيحة قليلا.وربما "فتحة= 0-7" لا ينبغي أن يكون لها مشفرة "7".

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top