نواصل الحديث عن أدوات لتقييم أداء وحدة المعالجة المركزية على أجهزة Linux. اليوم في المواد: temci ، uarch-bench ، likwid ، أدوات perf و llvm-mca.
المزيد من المعايير:
صور - لوكاس بلازيك - Unsplash
هذه أداة لتقدير وقت تنفيذ البرنامجين. في الواقع ، يسمح لك بمقارنة وقت تنفيذ تطبيقين. كتب الأداة من قبل طالب من ألمانيا ، يوهانس Bechberger ، الذي طورها كجزء من عمله الجامعية في عام 2016. اليوم ،
تم ترخيص الأداة بموجب رخصة جنو العمومية.
أراد يوهانس إنشاء أداة من شأنها قياس أداء نظام الحوسبة في بيئة مسيطر عليها. لذلك ، واحدة من الميزات الرئيسية temci هي القدرة على تكوين بيئة اختبار. على سبيل المثال ،
يمكنك : تغيير إعدادات مدير التحكم في تردد وحدة المعالجة المركزية (CPU) ، وتعطيل
مؤشرات الترابط الفائق وذاكرة التخزين المؤقت L1 و L2 ، وإيقاف تشغيل وضع turbo على معالجات Intel وغيرها .لمعايير التقييم ، تستخدم
temci أدوات الوقت ،
perf_stat و
getrusage .
هذه هي الطريقة التي تعمل بها الأداة المساعدة في الحالة الأولى:
استنادًا إلى نتائج القياس ، يقوم النظام بإنشاء
تقرير مناسب مع المخططات والجداول والرسوم البيانية ، والذي يميز temci عن الحلول المماثلة.
من أوجه القصور في temci تبرز "شبابه". لهذا السبب ،
لا يدعم كل تكوينات الأجهزة والبرامج. على سبيل المثال ، من الصعب أن تعمل تحت نظام macOS ، وبعض الوظائف غير متوفرة على نظام به معالج ARM. قد يتغير الوضع في المستقبل ، حيث يقوم المؤلف بتطوير المشروع بنشاط ، ويزداد عدد النجوم في جيثب تدريجياً - ليس ببعيد نوقش temci
في التعليقات على Hacker News.
أداة مساعدة لتقييم أداء وظائف وحدة المعالجة المركزية ذات المستوى المنخفض ، والتي تم تطويرها بواسطة المهندس Travis Downs (
Travis Downs ). قام مؤخرًا بتشغيل مدونة
الأداء الخاصة به على صفحات GitHub ، والتي تتحدث عن أدوات القياس والأشياء الأخرى ذات الصلة. بشكل عام ، بدأت uarch-bench في اكتساب شعبية ، ولكن تم
ذكرها بالفعل من قِبل سكان Hacker News في المواضيع المواضيعية كأداة مرجعية للانتقال.
يتيح لك Uarch-bench تقييم أداء الذاكرة وسرعة تحميل البيانات المتوازية والعمل على تنظيف سجلات YMM . يمكن العثور على النتائج المرجوة الناتجة عن البرنامج في المستودع الرسمي في أسفل الصفحة.
تجدر الإشارة إلى أن uarch-bench ، مثل temci ،
يعطل وظيفة Intel Turbo Boost (تزيد تلقائيًا من سرعة ساعة المعالج تحت الحمل) بحيث تكون نتائج الاختبار متسقة.
حتى الآن ، لا يزال المشروع في المراحل الأولى من التطوير ، وبالتالي فإن قاعدة uarch لا تحتوي على وثائق مفصلة ، وقد يكون هناك أخطاء في عملها - على سبيل المثال ، من
المعروف أن الصعوبات في تشغيل Ryzen
معروفة . كما يتم دعم معايير هندسة x86 فقط. يعد المؤلف بإضافة المزيد من الوظائف في المستقبل ويدعو للانضمام إلى التطوير.
هذه مجموعة أدوات لتقييم أداء أجهزة Linux باستخدام معالجات Intel و AMD و ARMv8. تم إنشاؤه تحت رعاية وزارة التعليم والبحث الفيدرالية الألمانية في عام 2017 وتم نقله إلى المصدر المفتوح.
من بين الأدوات المشابهة ، يمكن تمييز likwid-powermeter ، والذي يعرض معلومات من سجلات RAPL حول الطاقة التي يستهلكها النظام ، وكذلك likwid-setFrequencies - يسمح لك بالتحكم في تردد المعالج. يمكنك
العثور على القائمة الكاملة
في المستودع .
يتم استخدام الأداة من قبل المهندسين المشاركين في البحوث في مجال HPC. على سبيل المثال ، تعمل مجموعة من المتخصصين من المركز الإقليمي للحوسبة التابع لجامعة إرلانجن نورمبرغ (RRZE) في ألمانيا مع ليكويد. وهي تشارك بنشاط في تطوير هذه المجموعة من الأدوات.
صور - كليم Onojeghuo - Unsplash
تم تقديم هذه الأداة لتحليل أداء خوادم Linux
بواسطة Brendan Gregg. وهو أحد مطوري
DTrace ، وهو إطار تتبع ديناميكي لتصحيح أخطاء التطبيقات في الوقت الفعلي.
تستند أدوات perf إلى الأنظمة الأساسية لـ kernel perf_events و ftrace. تتيح لك أدواتهم المساعدة تحليل تأخير الإدخال / الإخراج (iosnoop) ، وتتبع الوسائط للوصول إلى مكالمات النظام (إلغاء الحساب ، funcslower ، funcgraph و functrace) وجمع إحصائيات "الزيارات" في ذاكرة التخزين المؤقت للملف (cachestat). في الحالة الأخيرة ، يبدو الأمر كما يلي:
تشكل مجتمع كبير نوعًا ما حول الأداة (
ما يقرب من 6 آلاف نجم على جيثب ). وهناك الشركات التي تستخدم أدوات perf بنشاط ، مثل
Netflix . ولكن يتم الانتهاء من هذه الأداة وتعديلها (على الرغم من أن التحديثات قد تم إصدارها نادرًا مؤخرًا). لذلك ، قد تحدث أخطاء في عمله - يكتب المؤلف أن أدوات perf في بعض الأحيان تسمى kernel panic.
أداة مساعدة تتنبأ بكمية موارد الحوسبة التي سيحتاجها رمز الجهاز على وحدات معالجة مركزية مختلفة. يقوم
بتقييم الإرشادات لكل دورة (
IPC ) وتحميل الأجهزة التي ينشئها التطبيق.
تم تقديم llvm-mca في عام 2018 كجزء من مشروع
LLVM ، الذي يقوم بتطوير نظام عالمي لتحليل البرامج وتحويلها وتحسينها. من المعروف أن مؤلفي llvm-mca قد استلهموا من حل تحليل أداء برنامج
Intel IACA وسعوا إلى إيجاد بديل له. ووفقًا للمستخدمين ، فإن ناتج الأداة (الترميز والأرقام) يشبه IACA حقًا -
يمكن العثور على مثال
هنا . ومع ذلك ، فإن llvm-mca لا تقبل إلا
بناء جملة AT & T ، لذلك قد تحتاج إلى استخدام المحولات للتعامل معها.
ما نكتب عنه في مدوناتنا وشبكاتنا الاجتماعية:
"مات. نموذج وول ستريت "أو كيفية تحسين تكاليف السحابة
تأمين نظام Linux الخاص بك: 10 نصائح
تقليل المخاطر: كيف لا تفقد بياناتك
كتب لأولئك الذين يشاركون بالفعل في إدارة النظام أو يخططون للبدء فقط
الاختيار: خمسة كتب ودورة واحدة على الشبكات

نحن في 1cloud.ru نقدم خدمة مجانية "
استضافة DNS ". يمكنك إدارة سجلات DNS الخاصة بك في حساب شخصي واحد.