مدير أحمال العمل Slurm
برنامج Slurm Workload Manager ، المعروف سابقًا باسم Simple Linux Utility for Resource Management ( SLURM )، أو ببساطة Slurm ، هو برنامج جدولة مهام مجاني ومفتوح المصدر لأنظمة Linux و Unix-like kernels ، ويستخدمه العديد من أجهزة الكمبيوتر العملاقة ومجموعات الكمبيوتر في العالم .
يستخدم برنامج Slurm خوارزمية أفضل ملاءمة تعتمد على جدولة منحنى هيلبرت أو بنية شبكة الشجرة السمينة لتحسين موضعية تخصيص المهام على الحواسيب المتوازية. [ 4 ] وهو يوفر ثلاث وظائف رئيسية:
- تخصيص وصول حصري و/أو غير حصري إلى الموارد (عُقد الحاسوب) للمستخدمين لفترة زمنية محددة حتى يتمكنوا من أداء العمل،
- توفير إطار عمل لبدء العمل وتنفيذه ومراقبته، وعادةً ما يكون ذلك مهمة متوازية مثل واجهة تمرير الرسائل (MPI) على مجموعة من العقد المخصصة، و
- التحكيم في النزاعات على الموارد من خلال إدارة قائمة انتظار المهام المعلقة.
تاريخ
بدأ تطوير برنامج Slurm كجهد تعاوني بين مختبر لورانس ليفرمور الوطني ، وشركة SchedMD ، [ 5 ] وشركة Linux NetworX، وشركة Hewlett-Packard ، ومجموعة Groupe Bull، كمدير موارد برمجيات حرة. صدرت النسخة الأولى منه عام 2002. [ 6 ] استُلهم البرنامج من برنامج Quadrics RMS مغلق المصدر ، ويشترك معه في بنية برمجية مماثلة. ويُشير اسمه إلى مشروب غازي في مسلسل Futurama . [ 7 ] ساهم في المشروع أكثر من 250 شخصًا حول العالم. ومنذ ذلك الحين، تطور البرنامج ليصبح مُجدول دفعات متطورًا قادرًا على تلبية متطلبات العديد من مراكز البيانات الكبيرة.
في عام 2010، أسس مطورو برنامج Slurm شركة SchedMD ، التي تتولى صيانة المصدر الأصلي، وتقديم خدمات التطوير، والدعم التجاري من المستوى الثالث، والتدريب. كما يتوفر الدعم التجاري من شركات Bull و Cray وScience + Computing (التابعة لشركة Atos ).
اعتبارًا من نوفمبر 2021 يُعدّ برنامج Slurm مدير أحمال العمل في حوالي 60% من أجهزة الكمبيوتر العملاقة TOP500 . [ 8 ]
بناء
يتميز تصميم Slurm ببنيته المعيارية العالية، حيث يضم حوالي 100 إضافة اختيارية. في أبسط إعداداته، يمكن تثبيته وتهيئته في غضون دقائق معدودة. أما الإعدادات الأكثر تطوراً فتتيح التكامل مع قواعد البيانات لأغراض المحاسبة، وإدارة حدود الموارد، وتحديد أولويات أعباء العمل.
سمات
تشمل ميزات Slurm ما يلي: [ 9 ]
- لا توجد نقطة فشل واحدة، وبرامج احتياطية، وخيارات مهام مقاومة للأعطال
- قابل للتوسع بدرجة كبيرة (يقوم بجدولة ما يصل إلى 100000 مهمة مستقلة على 100000 منفذ في IBM Sequoia )
- أداء عالي (يصل إلى 1000 طلب وظيفة في الثانية و600 عملية تنفيذ وظيفة في الثانية)
- برمجيات حرة ومفتوحة المصدر ( رخصة جنو العمومية العامة )
- قابل للتخصيص بدرجة عالية مع حوالي 100 إضافة
- جدولة الحصص العادلة باستخدام الحسابات المصرفية الهرمية
- الجدولة الاستباقية والجدولة الجماعية (تقسيم الوقت للوظائف المتوازية)
- متكامل مع قاعدة البيانات لأغراض المحاسبة والتكوين
- تخصيص الموارد الأمثل لبنية الشبكة وبنية العقدة (المقابس، والمعالجات الأساسية، والخيوط الفائقة)
- الحجز المسبق
- يمكن إيقاف تشغيل العقد الخاملة
- يمكن تشغيل أنظمة تشغيل مختلفة لكل مهمة
- جدولة الموارد العامة (مثل وحدة معالجة الرسومات )
- المحاسبة في الوقت الفعلي وصولاً إلى مستوى المهمة (تحديد المهام المحددة ذات الاستخدام العالي لوحدة المعالجة المركزية أو الذاكرة)
- حدود الموارد حسب المستخدم أو الحساب المصرفي
- حساب استهلاك الطاقة حسب الوظيفة
- دعم بيئة IBM المتوازية (PE/POE)
- دعم مجموعات الوظائف
- تحليل أداء الوظائف (أخذ عينات دورية من استخدام وحدة المعالجة المركزية، واستخدام الذاكرة، واستهلاك الطاقة، واستخدام الشبكة ونظام الملفات لكل مهمة)
- خوارزميات متطورة لتحديد أولويات الوظائف متعددة العوامل
- دعم MapReduce+
- دعم مخزن البيانات المتفجرة الذي يسرع نقل البيانات العلمية
- دعم الموارد العامة غير المتجانسة
- سياسة إعادة جدولة المهام التلقائية بناءً على قيمة الخروج
المنصات المدعومة
تعمل إصدارات Slurm الحديثة على نظام Linux فقط . تم نقل الإصدارات القديمة إلى بعض أنظمة التشغيل الأخرى القائمة على معيار POSIX ، بما في ذلك أنظمة BSD ( FreeBSD و NetBSD و OpenBSD )، [ 10 ] ولكن هذا لم يعد ممكنًا لأن Slurm يتطلب الآن مجموعات التحكم (cgroups) للعمليات الأساسية. ستحتاج المجموعات التي تعمل بأنظمة تشغيل أخرى غير Linux إلى استخدام نظام معالجة دفعية مختلف، مثل LPJS. [ 11 ] يدعم Slurm أيضًا العديد من بنى الحواسيب الفريدة، بما في ذلك:
- طرازات IBM BlueGene /Q، بما في ذلك طراز IBM Sequoia الذي تبلغ قدرته 20 بيتافلوب
- كراي إكس تي، إكس إي، وكاسكيد
- نظام تيانخه-2 هو نظام بقدرة 33.9 بيتافلوب، مزود بـ 32000 شريحة من معالجات إنتل آيفي بريدج و48000 شريحة من معالجات إنتل زيون فاي، بإجمالي 3.1 مليون نواة.
- بيئة IBM المتوازية
- أنطون
الاستخدام

يتكون النظام slurmمن ثلاثة أجزاء رئيسية:
slurmctld، برنامج تحكم مركزي يعمل على عقدة تحكم واحدة (مع إمكانية وجود نسخ احتياطية في حالة الفشل )؛- العديد من عقد الحوسبة، كل منها يحتوي على واحد أو أكثر
slurmdمن البرامج الخفية؛ - العملاء الذين يتصلون بعقدة المدير، غالباً باستخدام ssh .
- يمكن للعملاء إصدار أوامر إلى برنامج التحكم، والذي سيقبلها ويقسم عبء العمل على برامج الحوسبة.
بالنسبة للعملاء، فإن الأوامر الرئيسية هي srun(إضافة مهمة تفاعلية إلى قائمة الانتظار)، sbatch(إضافة مهمة إلى قائمة الانتظار)، squeue(طباعة قائمة انتظار المهام) و scancel(إزالة مهمة من قائمة الانتظار).
يمكن تشغيل المهام في وضع الدُفعات أو الوضع التفاعلي . في الوضع التفاعلي، يقوم جهاز الحوسبة بتشغيل واجهة سطر الأوامر، وربط العميل بها، ثم تشغيل المهمة. ومن هناك، يمكن للمستخدم مراقبة المهمة والتفاعل معها أثناء تشغيلها. عادةً ما تُستخدم المهام التفاعلية لتصحيح الأخطاء في البداية، وبعد الانتهاء من التصحيح، تُرسل المهمة نفسها مرة أخرى sbatch. أما في وضع الدُفعات، فتُحفظ stdoutمخرجاتها stderrعادةً في ملفات نصية لمراجعتها لاحقًا.
انظر أيضاً
مراجع
- ↑ "الإصدار v25.11.4" . 12 مارس 2026. تم الاطلاع عليه في 13 أبريل 2026 .
- ↑ "الإصدار v25.05.7" . 12 مارس 2026. تم الاطلاع عليه في 13 أبريل 2026 .
- ↑ "slurm/COPYING at master" . تم الاطلاع عليه في 1 ديسمبر 2025 .
- ↑ باسكوال، خوسيه أنطونيو؛ نافاريداس، خافيير؛ ميغيل-ألونسو، خوسيه (2009). تأثير سياسات التخصيص المُراعية للطوبولوجيا على أداء الجدولة . استراتيجيات جدولة المهام للمعالجة المتوازية. سلسلة محاضرات في علوم الحاسوب. المجلد 5798. الصفحات 138-144 . doi : 10.1007/978-3-642-04633-9_8 . hdl : 10810/71571 . ISBN 978-3-642-04632-2.
- ↑ "الدعم التجاري والتطوير والتركيب لبرنامج Slurm" . SchedMD . تم الاطلاع عليه بتاريخ 23 فبراير 2014 .
- ↑ "تاريخ Slurm - SchedMD" . SchedMD . مؤرشف من الأصل بتاريخ 18-07-2025 . تم الاطلاع عليه بتاريخ 10-11-2025 .
- ↑ "SLURM: أداة لينكس بسيطة لإدارة الموارد" (ملف PDF) . 23 يونيو 2003. تم الاطلاع عليه بتاريخ 11 يناير 2016 .
- ↑ "تشغيل مهمة على الحوسبة عالية الأداء باستخدام Slurm" . hpcc.usc.edu . مركز الحوسبة عالية الأداء - جامعة جنوب كاليفورنيا. مؤرشف من الأصل بتاريخ 6 مارس 2019. تم الاطلاع عليه بتاريخ 5 مارس 2019 .
- ↑ "مدير أحمال العمل Slurm - نظرة عامة" . slurm.schedmd.com . تم الاطلاع عليه بتاريخ 10-10-2025 .
- ↑ منصات سلرم
- ↑ بيكون، جيسون (2025-08-26)، التجديف الخارجي/LPJS ، تم الاطلاع عليه بتاريخ 2025-10-10
للمزيد من القراءة
- بال، سوزان م.؛ باليرمو، دانيال ج. (2008). تحسين مدير موارد مفتوح المصدر بدعم متعدد النوى/متعدد الخيوط . استراتيجيات جدولة المهام للمعالجة المتوازية. سلسلة محاضرات في علوم الحاسوب . المجلد 4942. ص 37. doi : 10.1007/978-3-540-78699-3_3 . ISBN 978-3-540-78698-6.
- جيت، م.؛ غروندونا، م. (يونيو 2003). "SLURM: أداة لينكس بسيطة لإدارة الموارد" (ملف PDF) . وقائع مؤتمر ومعرض ClusterWorld . سان خوسيه، كاليفورنيا.
- لايتون، جيفري ب. (5 فبراير 2009). "Caos NSA وPerceus: حزمة برمجيات متكاملة للمجموعات الحاسوبية" . مجلة لينكس . مؤرشف من الأصل في 11 فبراير 2009.
- يو، آندي ب.؛ جيت، موريس أ.؛ غروندونا، مارك (2003). SLURM: أداة لينكس بسيطة لإدارة الموارد . استراتيجيات جدولة المهام للمعالجة المتوازية. سلسلة محاضرات في علوم الحاسوب. المجلد 2862. ص 44. CiteSeerX 10.1.1.10.6834 . doi : 10.1007/10968987_3 . ISBN 978-3-540-20405-3.
روابط خارجية
- جدولة العمل
- الحوسبة المتوازية
- الحوسبة الشبكية
- الحوسبة العنقودية
- برنامج مجاني مكتوب بلغة C
- برنامج يستخدم رخصة جنو العمومية العامة
