معايير LINPACK

تُعدّ معايير LINPACK مقياسًا لقدرة النظام على معالجة العمليات الحسابية ذات الفاصلة العائمة . وقد طوّرها جاك دونغارا ، وهي تقيس سرعة حلّ الحاسوب لنظام معادلات خطية كثيف من الرتبة n  × n، وهو نظام Ax = b ، الذي يُعدّ مهمة شائعة في الهندسة .   

تُستخدم أحدث نسخة من هذه المعايير لبناء قائمة TOP500 ، التي تصنف أقوى الحواسيب العملاقة في العالم. [ 1 ]

يهدف هذا الاختبار إلى تقدير سرعة أداء الحاسوب عند حلّ المشكلات الواقعية. وهو تبسيطٌ للأمر، إذ لا يمكن لأي مهمة حسابية منفردة أن تعكس الأداء الكلي لنظام الحاسوب. مع ذلك، يُمكن لأداء معيار LINPACK أن يُقدّم تصحيحًا جيدًا للأداء الأمثل الذي تُقدّمه الشركة المصنّعة. يُعرّف الأداء الأمثل بأنه أقصى أداء نظري يُمكن للحاسوب تحقيقه، ويُحسب بضرب تردد الجهاز (بالدورات في الثانية) في عدد العمليات التي يُمكنه تنفيذها في كل دورة. سيكون الأداء الفعلي دائمًا أقل من الأداء الأمثل. [ 2 ] يُعدّ أداء الحاسوب مسألةً معقدةً تعتمد على العديد من المتغيرات المترابطة. يتكوّن الأداء الذي يقيسه معيار LINPACK من عدد عمليات الفاصلة العائمة 64 بت ، والتي تشمل عادةً عمليات الجمع والضرب، التي يُمكن للحاسوب تنفيذها في الثانية، والمعروفة أيضًا باسم FLOPS . مع ذلك، من المرجّح أن يكون أداء الحاسوب عند تشغيل التطبيقات الفعلية أقل بكثير من أقصى أداء يُحقّقه عند تشغيل معيار LINPACK المناسب. [ 3 ]

اسم هذه المعايير مشتق من حزمة LINPACK ، وهي مجموعة من إجراءات فورتران الجبرية الفرعية التي شاع استخدامها في ثمانينيات القرن الماضي، وكانت في البداية مرتبطة ارتباطًا وثيقًا بمعيار LINPACK. وقد استُبدلت حزمة LINPACK منذ ذلك الحين بمكتبات أخرى.

تاريخ

ظهر تقرير LINPACK المعياري لأول مرة في عام 1979 كملحق لدليل مستخدم LINPACK . [ 4 ]

تم تصميم LINPACK لمساعدة المستخدمين على تقدير الوقت الذي تتطلبه أنظمتهم لحل مشكلة باستخدام حزمة LINPACK، وذلك من خلال استقراء نتائج الأداء التي تم الحصول عليها من 23 جهاز كمبيوتر مختلف لحل مشكلة مصفوفة بحجم 100.

تم اختيار حجم المصفوفة هذا بسبب قيود الذاكرة ووحدة المعالجة المركزية في ذلك الوقت:

  • يتم توليد 10000 قيمة عددية عشوائية تتراوح من -1 إلى 1 لملء مصفوفة كثيفة عامة،
  • ثم يتم استخدام تحليل LU مع التمحور الجزئي لتحديد التوقيت.

على مر السنين، تم إصدار نسخ إضافية بأحجام مسائل مختلفة، مثل المصفوفات من الرتبة 300 و1000، وقيود مختلفة، مما أتاح فرصًا جديدة للتحسين مع بدء بنى الأجهزة في تنفيذ عمليات المصفوفة-المتجه والمصفوفة-المصفوفة. [ 5 ]

تم إدخال المعالجة المتوازية أيضًا في معيار LINPACK المتوازي في أواخر الثمانينيات. [ 2 ]

في عام 1991، تم تعديل LINPACK من أجل [ 6 ] حل المشكلات ذات الحجم التعسفي، مما مكن أجهزة الكمبيوتر عالية الأداء (HPC) من الاقتراب من أدائها التقاربي.

وبعد عامين، تم استخدام هذا المعيار لقياس أداء أول قائمة لأفضل 500 شركة .

المعايير

لينباك 100

يُشابه برنامج LINPACK 100 إلى حد كبير المعيار الأصلي الذي نُشر عام 1979 مع دليل مستخدمي LINPACK. [ 7 ] يتم الحصول على الحل باستخدام طريقة الحذف الغاوسي مع التمحور الجزئي ، مع2/3ن3+2ن2{\displaystyle 2/3\,n^{3}+2n^{2}}عمليات الفاصلة العائمة، حيث n  =  100 هي رتبة المصفوفة الكثيفة A التي تحدد المسألة. صغر حجمها وقلة مرونة البرمجيات لا يسمحان لمعظم الحواسيب الحديثة بالوصول إلى حدود أدائها. مع ذلك، لا يزال من المفيد التنبؤ بالأداء في التعليمات البرمجية المكتوبة من قِبل المستخدم والتي تتطلب عمليات حسابية مكثفة باستخدام تحسين المُصرّف . [ 2 ]

لينباك 1000

يُمكن لـ LINPACK 1000 تقديم أداء أقرب إلى الحد الأقصى لقدرة الجهاز، وذلك لأنه بالإضافة إلى توفير حجم أكبر للمشكلة، يُمكنه التعامل مع مصفوفة من الرتبة 1000. كما يُمكن إجراء تغييرات على الخوارزمية. القيدان الوحيدان هما عدم إمكانية تقليل الدقة النسبية، وسيُعتبر عدد العمليات دائمًا ثابتًا.2/3ن3+2ن2،{\displaystyle 2/3\,n^{3}+2n^{2},}مع n  =  1000. [ 2 ]

HPLinpack

المعايير السابقة غير مناسبة لاختبار الحواسيب المتوازية، [ 8 ] ولذلك تم تقديم معيار الحوسبة المتوازية العالية من لينباك ، أو معيار HPLinpack. في HPLinpack، يمكن زيادة حجم المسألة (n) إلى الحد المطلوب لتحسين أداء الجهاز. مرة أخرى،2/3ن3+2ن2{\displaystyle 2/3\,n^{3}+2n^{2}}سيُعتبر هذا العدد هو عدد العمليات، بغض النظر عن الخوارزمية المستخدمة. لا يُسمح باستخدام خوارزمية ستراسن لأنها تُشوّه معدل التنفيذ الحقيقي. [ 9 ] يجب أن تكون الدقة بحيث يتحقق التعبير التالي:

أx-ب(أx+ب)نϵيا(1)،{\displaystyle {\frac {\|Ax-b\|_{\infty }}{{\big (}\|A\|_{\infty }\|x\|_{\infty }+\|b\|_{\infty }{\big )}n\epsilon }}\leq O(1),}

أين

ϵ{\displaystyle \epsilon }تكمن أهمية الآلة في دقتها،
يمثل n حجم المشكلة، [ 10 ]
{\displaystyle \|\cdot \|_{\infty }}هو معيار المصفوفة (أكبر مجموع للصفوف [ 11 ]
يا(1){\displaystyle O(1)}يتوافق مع ترميز Big-O .

يتم الإبلاغ عن الكميات التالية لكل نظام حاسوبي: [ 2 ]

R max – الأداء بوحدة GFLOPS لأكبر مشكلة يتم تشغيلها على جهاز.
N max – حجم أكبر مشكلة يتم تشغيلها على جهاز.
N 1/2 – الحجم الذي يتم فيه تحقيق نصف معدل التنفيذ الأقصى R.
R peak – ذروة الأداء النظرية بالجيجا فلوبس للجهاز.

تُستخدم هذه النتائج لإعداد قائمة TOP500 مرتين سنويًا، والتي تضم أقوى أجهزة الكمبيوتر في العالم. [ 1 ] تقيس قائمة TOP500 هذه النتائج باستخدام تنسيق الفاصلة العائمة مزدوجة الدقة (FP64). تُسمى النسبة R max / R peak كفاءة التوازي أو كفاءة HPL. [ 12 ] عادةً ما تكون هذه الكفاءة أقل كلما زاد عدد عُقد النظام نظرًا لزيادة تكلفة الاتصال. على سبيل المثال، حقق جهاز Cray Y-MP من تسعينيات القرن الماضي كفاءة HPL تبلغ حوالي 90%، [ 13 ] بينما حقق جهاز Frontier كفاءة HPL تبلغ حوالي 70% في عام 2023. [ 14 ]

تطبيقات معيار LINPACK

يصف القسم السابق القواعد الأساسية للمعايير. قد يختلف التنفيذ الفعلي للبرنامج، مع توفر بعض الأمثلة بلغة فورتران [ 15 ] أو سي [ 16 ] أو جافا [ 17 ] .

HPL

HPL هو تطبيق محمول لـ HPLinpack، كُتب بلغة C، وكان في الأصل بمثابة دليل إرشادي، ولكنه يُستخدم الآن على نطاق واسع لتوفير البيانات لقائمة TOP500، مع إمكانية استخدام تقنيات وحزم أخرى. يُولّد HPL نظامًا خطيًا من المعادلات من الرتبة n ويحله باستخدام تحليل LU مع التمحور الجزئي للصفوف. يتطلب تشغيله تثبيت تطبيقات MPI، بالإضافة إلى BLAS أو VSIPL . [ 18 ]

بشكل عام، تتميز الخوارزمية بالخصائص التالية: [ 19 ] [ 20 ]

  • توزيع البيانات الدوري في كتل ثنائية الأبعاد
  • تحليل LU باستخدام الصيغة ذات النظرة الصحيحة مع أعماق مختلفة من التطلع المسبق
  • تحليل اللوحة المتكررة
  • ستة أنواع مختلفة من البث التلفزيوني عبر اللوحات
  • خوارزمية التبديل والبث لتقليل عرض النطاق الترددي
  • الاستبدال العكسي مع التطلع إلى الأمام بعمق 1

نقد

يُقال إن معيار LINPACK قد نجح بفضل قابلية التوسع [ 21 ] لـ HPLinpack، وحقيقة أنه يُنتج رقمًا واحدًا، مما يجعل النتائج قابلة للمقارنة بسهولة، وقاعدة البيانات التاريخية الواسعة المرتبطة به. [ 22 ] ومع ذلك، بعد فترة وجيزة من إصداره، وُجهت انتقادات لمعيار LINPACK لتقديمه مستويات أداء "لا يمكن الوصول إليها عمومًا إلا من قِبل عدد قليل جدًا من المبرمجين الذين يُحسّنون برامجهم بشكل مُرهق لتلك الآلة فقط"، [ 23 ] لأنه يختبر فقط دقة الأنظمة الخطية الكثيفة، والتي لا تُمثل جميع العمليات التي تُجرى عادةً في الحوسبة العلمية. [ 24 ] قال جاك دونغارا ، القوة الدافعة الرئيسية وراء معايير LINPACK، إنه في حين أنها تُركز فقط على "ذروة" سرعة وحدة المعالجة المركزية وعدد وحدات المعالجة المركزية، فإنها لا تُولي اهتمامًا كافيًا لعرض النطاق الترددي المحلي والشبكة. [ 25 ]

قال توم دانينغ جونيور ، مدير المركز الوطني لتطبيقات الحوسبة الفائقة ، عن معيار LINPACK: "يُعدّ معيار LINPACK من الظواهر المثيرة للاهتمام ، إذ يكاد كل من يعرفه أن يسخر من جدواه. فهم يدركون حدوده، لكنه يحظى بشعبية واسعة لأنه الرقم الوحيد الذي اقتنعنا به جميعًا على مر السنين." [ 26 ] 

بحسب دونغارا، "يسعى منظمو مسابقة TOP500 بنشاط إلى توسيع نطاق تقارير الأداء المعياري" لأنه "من المهم تضمين المزيد من خصائص الأداء وبصماته لأي نظام". [ 27 ] ومن بين الاحتمالات التي يجري دراستها لتوسيع نطاق الأداء المعياري لمسابقة TOP500، مجموعة معايير HPC Challenge . [ 28 ] مع ظهور الحواسيب فائقة السرعة (بيتا سكيل) ، بدأ عدد الحواف التي يتم اجتيازها في الثانية بالظهور كمقياس تكميلي لعدد عمليات الفاصلة العائمة في الثانية (FLOPS) الذي يقيسه برنامج LINPACK. ومن هذه المقاييس أيضًا معيار HPCG ، الذي اقترحه دونغارا. [ 29 ]

مشكلة أوقات التشغيل

بحسب جاك دونغارا ، من المتوقع أن يزداد وقت التشغيل اللازم للحصول على نتائج أداء جيدة باستخدام برنامج HPLinpack. وفي مؤتمر عُقد عام 2010، قال إنه يتوقع أن تصل أوقات التشغيل إلى 2.5 يوم في غضون "بضع سنوات". [ 30 ]

انظر أيضاً

مراجع

  1. 1 2 "معيار لينباك، أفضل 500 موقع للحوسبة الفائقة" . تم الاسترجاع في 10 فبراير 2015 .
  2. 1 2 3 4 5 دونغارا، جاك جيه؛ لوشيك، بيوتر؛ بيتيت، أنطوان (2003)، "معيار LINPACK: الماضي والحاضر والمستقبل" (ملف PDF) ، التزامن والحوسبة: الممارسة والتجربة ، 15 (9)، جون وايلي وأولاده المحدودة: 803-820 ، doi : 10.1002/cpe.728 ، S2CID 1900724 .
  3. مقابلة جاك دونغارا أجراها ساندر أولسون ، مؤرشفة من الأصل بتاريخ 4 مارس 2016 ، تم الاطلاع عليها بتاريخ 13 يناير 2012.
  4. ^ دونجارا، جي جي؛ مولر، سي بي؛ بانش، جي آر؛ ستيوارت، غيغاواط (1979)، LINPACK: دليل المستخدمين ، SIAM ، ISBN 9780898711721.
  5. دونغارا، جاك (1988)، "معيار LINPACK: شرح"، الحوسبة الفائقة (ملف PDF) ، سلسلة محاضرات في علوم الحاسوب، المجلد 297، سبرينغر برلين/هايدلبرغ، الصفحات 456-474 ، doi : 10.1007/3-540-18991-2_27 ، ISBN   978-3-540-18991-6.
  6. معيار Linpack عالي الأداء (ملف PDF) ، مختبر الحوسبة المبتكرة، جامعة تينيسي، 2010 ، تم الاطلاع عليه بتاريخ 10 فبراير 2015.
  7. JJ Dongarra, JR Bunch, CB Moler, GW Stewart, "دليل مستخدمي LINPACK" ، 1979.
  8. بيلي، د.هـ؛ بارسز، إ.؛ بارتون، ج.ت؛ براونينغ، د.س؛ كارتر، ر.ل؛ داغوم، ل.؛ فاتوهي، ر.أ؛ فريدريكسون، ب.و؛ لاسينسكي، ت.أ؛ شرايبر، ر.س؛ سيمون، هـ.د؛ فينكاتاكريشنان، ف.؛ وييراتونغا، س.ك (1991). "معايير الأداء المتوازية لـ NAS - ملخص ونتائج أولية". وقائع مؤتمر ACM/IEEE للحوسبة الفائقة لعام 1991 - الحوسبة الفائقة '91 . الصفحات 158-165 . doi : 10.1145/125826.125925 . ISBN   0897914597. S2CID 18046345 . 
  9. "هل يُمكنني استخدام طريقة ستراسن عند إجراء عمليات ضرب المصفوفات في معيار HPL أو في تشغيل Top500؟" . الأسئلة الشائعة حول LINPACK . تم الاطلاع عليه بتاريخ 10 فبراير 2015 .
  10. "إلى أي مدى يجب أن تتوافق الحلول؟" . الأسئلة الشائعة حول LINPACK . تم الاطلاع عليه بتاريخ 10 فبراير 2015 .
  11. "LINPACK dlange" . تم الاسترجاع بتاريخ 2024-03-09 .
  12. "الأداء النظري الأمثل R peak " . دروس الحوسبة عالية الأداء (HPC) من جامعة ليدز . تم الاطلاع عليه بتاريخ 15 نوفمبر 2023 .
  13. "Y-MP C916/12256" . TOP500 . 1995-12-01 . تم الاطلاع عليه بتاريخ 2023-11-15 .
  14. "Frontier – HPE Cray EX235a، معالج AMD EPYC من الجيل الثالث مُحسَّن، 64 نواة، 2 جيجاهرتز، AMD Instinct MI250X، Slingshot-11" . TOP500 . 12 نوفمبر 2023. تاريخ الاسترجاع: 15 نوفمبر 2023 .
  15. "برنامج Linpack المعياري في لغة Fortran" . تم الاطلاع عليه بتاريخ 10-02-2015 .
  16. "برنامج Linpack المعياري بلغة C" . تم الاطلاع عليه بتاريخ 10-02-2015 .
  17. "برنامج Linpack المعياري في Java" . تم الاسترجاع في 10-02-2015 .
  18. "HPL - تطبيق محمول لمعيار Linpack عالي الأداء لأجهزة الكمبيوتر ذات الذاكرة الموزعة" . The Netlib . تم الاطلاع عليه بتاريخ 10 فبراير 2015 .
  19. "خوارزمية HPL" . مكتبة Netlib .
  20. "نظرة عامة على HPL" . مختبر الحوسبة المبتكرة . تم الاسترجاع في 10 فبراير 2015 .
  21. "مقابلة مع أسطورة الحوسبة الفائقة جاك دونغارا" . 2002-05-24.
  22. هايغ، توماس (2004). "مقابلة مع جاك ج. دونغارا" (ملف PDF) . يُعدّ برنامج LINPACK معيارًا يُستشهد به كثيرًا نظرًا لوجود قاعدة بيانات تاريخية ضخمة فيه، ولأنه سهل التشغيل والفهم نسبيًا، ولأنه يجسّد، إلى حد ما، أفضل وأسوأ ما في البرمجة.
  23. هاموند، ستيفن (1995)، "ما وراء الماكشوفلوبس: إدخال معالجات MPP في بيئة الإنتاج" ، مذكرة فنية رقم 413 ، المركز الوطني لأبحاث الغلاف الجوي ، Ucar/Ncar: 844 كيلوبايت، Bibcode : 1995NCART.413...... ، doi : 10.5065/D6J67DW7.
  24. غاهفاري، هورموزد؛ هومين، مارك؛ ديميل، جيمس؛ يليتش، كاثرين (2006)، "قياس أداء ضرب المصفوفة المتفرقة في المتجه في خمس دقائق"، ورشة عمل SPEC Benchmark (PDF).
  25. دونغارا، جاك ج. (2007)، "معيار تحدي الحوسبة عالية الأداء: هل هو مرشح لاستبدال Linpack في قائمة أفضل 500؟"، ورشة عمل SPEC Benchmark (ملف PDF).
  26. كريستوفر ميمز (2010-11-08). "لماذا يُعدّ الحاسوب العملاق الصيني الجديد الأسرع في العالم من الناحية التقنية فقط؟" . تم الاطلاع عليه بتاريخ 22-09-2011 .
  27. موير، مارتن (24-05-2002). "مقابلة مع أسطورة الحوسبة الفائقة جاك دونغارا" . تم الاطلاع عليه بتاريخ 01-12-2022 .
  28. لوزتشيك، بيوتر؛ دونغارا، جاك جيه؛ كوستر، ديفيد؛ رابينسيفنر، رولف؛ لوكاس، بوب؛ كيبنر، جيريمي؛ مكالبين، جون؛ بيلي، ديفيد؛ تاكاهاشي، دايسوكي (2005)، مقدمة إلى مجموعة معايير تحدي الحوسبة عالية الأداء (PDF).
  29. هيمسوث، نيكول (26 يونيو 2014). "معيار جديد للحوسبة عالية الأداء يحقق نتائج واعدة" . HPCWire . تم الاطلاع عليه بتاريخ 1 ديسمبر 2022 .
  30. دونغارا، جاك ج. (2010). معيار LINPACK مع حدود زمنية على المعالجات متعددة النوى والمسرعات القائمة على وحدة معالجة الرسومات (ملف PDF) . المؤتمر الدولي للحوسبة الفائقة.