لینکس سرورز کے لیے بینچ مارکس: اوپن ٹولز کا انتخاب

ہم لینکس مشینوں پر سی پی یو کی کارکردگی کا اندازہ لگانے کے لیے ٹولز کے بارے میں بات کرتے رہتے ہیں۔ آج مواد میں: temci، uarch-bench، likwid، perf-tools اور llvm-mca.

مزید معیارات:

لینکس سرورز کے لیے بینچ مارکس: اوپن ٹولز کا انتخاب
Фото - لوکاس بلیزیک - کھولنا

temci

یہ دو پروگراموں پر عمل درآمد کے وقت کا تخمینہ لگانے کا ایک ٹول ہے۔ بنیادی طور پر، یہ آپ کو دو ایپلی کیشنز کے عملدرآمد کے وقت کا موازنہ کرنے کی اجازت دیتا ہے۔ یوٹیلیٹی کے مصنف جرمنی سے تعلق رکھنے والے ایک طالب علم جوہانس بیچبرگر تھے، جنہوں نے اسے 2016 میں اپنے بیچلر کے مقالے کے حصے کے طور پر تیار کیا۔ آج کا آلہ نے بانٹا GNU جنرل پبلک لائسنس کے تحت لائسنس یافتہ۔

جوہانس ایک ایسا ٹول بنانا چاہتا تھا جو اسے کنٹرولڈ ماحول میں کمپیوٹنگ سسٹم کی کارکردگی کی پیمائش کرنے کی اجازت دے گا۔ لہذا، temci کی اہم خصوصیات میں سے ایک ٹیسٹ ماحول قائم کرنے کی صلاحیت ہے. مثال کے طور پر، ایک کر سکتے ہیں: CPU فریکوئنسی مینیجر کی ترتیبات کو تبدیل کریں، غیر فعال کریں۔ ہائپر تھریڈنگ اور L1 اور L2 کیشز، انٹیل پروسیسرز وغیرہ پر ٹربو موڈ کو آف کریں۔ بینچ مارکنگ کے لیے temci ٹولز کا استعمال کرتا ہے۔ وقت, perf_stat и حاصل کرنا.

پہلی صورت میں یہ افادیت کی طرح نظر آتی ہے:

# compare the run times of two programs, running them each 20 times
> temci short exec "sleep 0.1" "sleep 0.2" --runs 20
Benchmark 20 times                [####################################]  100%
Report for single runs
sleep 0.1            (   20 single benchmarks)
     avg_mem_usage mean =           0.000, deviation =   0.0
     avg_res_set   mean =           0.000, deviation =   0.0
     etime         mean =      100.00000m, deviation = 0.00000%
     max_res_set   mean =         2.1800k, deviation = 3.86455%
     stime         mean =           0.000, deviation =   0.0
     utime         mean =           0.000, deviation =   0.0

sleep 0.2            (   20 single benchmarks)
     avg_mem_usage mean =           0.000, deviation =   0.0
     avg_res_set   mean =           0.000, deviation =   0.0
     etime         mean =      200.00000m, deviation = 0.00000%
     max_res_set   mean =         2.1968k, deviation = 3.82530%
     stime         mean =           0.000, deviation =   0.0
     utime         mean =           0.000, deviation =   0.0

بینچ مارکنگ کے نتائج کی بنیاد پر، نظام پیدا کرتا ہے۔ آسان رپورٹ ڈایاگرام، ٹیبلز اور گرافس کے ساتھ، جو temci کو اسی طرح کے حل سے ممتاز کرتا ہے۔

temci کی خامیوں میں، اس کی "جوانی" نمایاں ہے۔ اس کی وجہ سے وہ ہر چیز کی حمایت نہیں کی جاتی ہے ہارڈ ویئر اور سافٹ ویئر کی ترتیب. مثال کے طور پر، macOS پر چلنا مشکل ہے، اور کچھ خصوصیات ARM پر مبنی سسٹم پر دستیاب نہیں ہیں۔ مستقبل میں، صورت حال تبدیل ہو سکتی ہے، کیونکہ مصنف فعال طور پر اس منصوبے کو تیار کر رہا ہے، اور GitHub پر ستاروں کی تعداد بتدریج بڑھ رہی ہے - اتنا عرصہ پہلے نہیں temci بھی تبصروں میں بحث کی گئی ہے۔ ہیکر نیوز پر۔

uarch- بنچ

انجینئر ٹریوس ڈاونز (ٹریوس ڈاؤنز)۔ حال ہی میں وہ بلاگنگ کر رہا ہے۔ کارکردگی کے معاملات GitHub صفحات پر، جو بینچ مارکنگ ٹولز اور دیگر متعلقہ چیزوں کے بارے میں بات کرتا ہے۔ عام طور پر، uarch-bench صرف مقبولیت حاصل کرنے کے لئے شروع کر رہا ہے، لیکن یہ پہلے سے ہی بہت عام ہے ذکر بینچ مارکنگ کے لیے جانے والے ٹول کے طور پر موضوعاتی دھاگوں میں ہیکر نیوز کے رہائشی۔

Uarch-bench آپ کو میموری کی کارکردگی، متوازی ڈیٹا لوڈ کرنے کی رفتار اور صفائی کے کام کا جائزہ لینے کی اجازت دیتا ہے۔ YMM رجسٹر. پروگرام کے ذریعہ تیار کردہ بینچ مارکنگ کے نتائج کس طرح کے نظر آتے ہیں یہ معلوم کیا جاسکتا ہے۔ سرکاری ذخیرے میں صفحے کے نیچے

یہ بات قابل غور ہے کہ uarch-bench، جیسے temci، منقطع کرتا ہے انٹیل ٹربو بوسٹ فنکشن (یہ خود بخود بوجھ کے نیچے پروسیسر کی گھڑی کی رفتار کو بڑھاتا ہے) تاکہ ٹیسٹ کے نتائج ایک جیسے ہوں۔

ابھی کے لیے، پروجیکٹ ترقی کے ابتدائی مراحل میں ہے، اس لیے uarch-bench کے پاس تفصیلی دستاویزات نہیں ہیں، اور اس کے آپریشن میں کیڑے ہوسکتے ہیں - مثال کے طور پر، مشکلات معلوم ہیں۔ Ryzen پر لانچ کے ساتھ۔ نیز، صرف x86 آرکیٹیکچرز کے بینچ مارکس کی حمایت کی جاتی ہے۔ مصنف مستقبل میں مزید فعالیت شامل کرنے کا وعدہ کرتا ہے اور آپ کو ترقی میں شامل ہونے کی دعوت دیتا ہے۔

مائع

یہ Intel، AMD اور ARMv8 پروسیسرز کے ساتھ لینکس مشینوں کی کارکردگی کا جائزہ لینے کے لیے ٹولز کا ایک سیٹ ہے۔ اسے 2017 میں جرمن وفاقی وزارت تعلیم اور تحقیق کے زیر اہتمام بنایا گیا تھا اور اسے اوپن سورس میں جاری کیا گیا تھا۔

likwid ٹولز میں سے، ہم likwid-powermeter کو نمایاں کر سکتے ہیں، جو RAPL رجسٹروں سے سسٹم کے ذریعے استعمال ہونے والی بجلی کے بارے میں معلومات دکھاتا ہے، ساتھ ہی likwid-setFrequencies، جو آپ کو پروسیسر کی فریکوئنسی کو کنٹرول کرنے کی اجازت دیتا ہے۔ آپ مکمل فہرست دیکھ سکتے ہیں۔ ذخیرہ میں تلاش کریں.

یہ آلہ HPC تحقیق میں شامل انجینئرز استعمال کرتے ہیں۔ مثال کے طور پر، likwid کے ساتھ کام کر رہا ہے جرمنی میں ایرلانجن نیورمبرگ یونیورسٹی (RRZE) کے علاقائی کمپیوٹنگ سینٹر کے ماہرین کا ایک گروپ۔ وہ ٹولز کے اس سیٹ کی ترقی میں بھی بڑھ چڑھ کر حصہ لیتی ہے۔

لینکس سرورز کے لیے بینچ مارکس: اوپن ٹولز کا انتخاب
Фото - کلیم اونوجیوچو - کھولنا

پرف ٹولز

لینکس سرورز کی کارکردگی کا تجزیہ کرنے کے لیے یہ ٹول متعارف کرایا برینڈن گریگ۔ وہ ڈویلپرز میں سے ایک ہے۔ Drace - حقیقی وقت میں ایپلی کیشنز کو ڈیبگ کرنے کے لیے ایک متحرک ٹریسنگ فریم ورک۔

perf-tools perf_events اور ftrace کرنل سب سسٹم پر مبنی ہے۔ ان کی افادیت آپ کو I/O لیٹنسی (iosnoop)، ٹریک سسٹم کال آرگیومینٹس (unccount، funclower، funcgraph اور functrace) کا تجزیہ کرنے اور فائل کیشے (cachestat) میں "ہٹس" پر اعدادوشمار جمع کرنے کی اجازت دیتی ہے۔ مؤخر الذکر صورت میں، کمانڈ اس طرح نظر آتی ہے:

# ./cachestat -t
Counting cache functions... Output every 1 seconds.
TIME HITS MISSES DIRTIES RATIO BUFFERS_MB CACHE_MB
08:28:57 415 0 0 100.0% 1 191
08:28:58 411 0 0 100.0% 1 191
08:28:59 362 97 0 78.9% 0 8
08:29:00 411 0 0 100.0% 0 9

آلے کے ارد گرد ایک کافی بڑی جماعت بن گئی ہے (GitHub پر تقریباً 6 ہزار ستارے۔)۔ اور ایسی کمپنیاں ہیں جو فعال طور پر پرف ٹولز استعمال کرتی ہیں، مثال کے طور پر Netflix کے. لیکن اس ٹول کو مزید تیار کیا جا رہا ہے اور اس میں ترمیم کی جا رہی ہے (حالانکہ اپ ڈیٹس حال ہی میں شاذ و نادر ہی جاری کیے گئے ہیں)۔ لہذا، اس کے آپریشن میں غلطیاں ہوسکتی ہیں - مصنف لکھتا ہے کہ بعض اوقات perf-tools kernel گھبراہٹ کا سبب بنتا ہے۔

llvm-mca

ایک افادیت جو پیش گوئی کرتی ہے کہ مختلف CPUs پر کتنے کمپیوٹنگ وسائل مشین کوڈ کی ضرورت ہوگی۔ وہ تشخیص کرتا ہے ہدایات فی سائیکل (آئپیسی) اور ہارڈ ویئر پر بوجھ جو ایک خاص ایپلیکیشن تیار کرتا ہے۔

llvm-mca کو 2018 میں پروجیکٹ کے حصے کے طور پر پیش کیا گیا تھا۔ ایل ایل وی ایم، جو پروگراموں کے تجزیہ، تبدیلی اور اصلاح کے لیے ایک عالمگیر نظام تیار کر رہا ہے۔ یہ معلوم ہے کہ llvm-mca کے مصنفین سافٹ ویئر کی کارکردگی کا تجزیہ کرنے کے حل سے متاثر تھے۔ انٹیل سے IACA اور متبادل پیدا کرنے کی کوشش کی۔ اور صارفین کے مطابق، ٹول کی آؤٹ پٹ (ان کی ترتیب اور مقدار) واقعی IACA سے ملتی ہے - مثال کے طور پر یہاں پایا جا سکتا ہے. تاہم، llvm-mca صرف قبول کرتا ہے۔ AT&T نحو، لہذا آپ کو اس کے ساتھ کام کرنے کے لیے کنورٹرز کا استعمال کرنا پڑے گا۔

ہم اپنے بلاگز اور سوشل نیٹ ورکس پر کیا لکھتے ہیں:

لینکس سرورز کے لیے بینچ مارکس: اوپن ٹولز کا انتخاب "چٹائی. وال اسٹریٹ ماڈل" یا کلاؤڈ اخراجات کو بہتر بنانے کا طریقہ

لینکس سرورز کے لیے بینچ مارکس: اوپن ٹولز کا انتخاب اپنے لینکس سسٹم کو کیسے محفوظ بنائیں: 10 ٹپس
لینکس سرورز کے لیے بینچ مارکس: اوپن ٹولز کا انتخاب خطرے کو کم کرنا: اپنے ڈیٹا کو کیسے ضائع نہ کریں۔

لینکس سرورز کے لیے بینچ مارکس: اوپن ٹولز کا انتخاب ان لوگوں کے لیے کتابیں جو پہلے ہی سسٹم ایڈمنسٹریشن میں شامل ہیں یا ابھی شروع کرنے کا ارادہ کر رہے ہیں۔
لینکس سرورز کے لیے بینچ مارکس: اوپن ٹولز کا انتخاب انتخاب: نیٹ ورکس پر پانچ کتابیں اور ایک کورس

لینکس سرورز کے لیے بینچ مارکس: اوپن ٹولز کا انتخابہم 1cloud.ru پر ایک مفت سروس پیش کرتے ہیں۔DNS ہوسٹنگ" آپ ایک ذاتی اکاؤنٹ میں DNS ریکارڈز کا نظم کر سکتے ہیں۔

ماخذ: www.habr.com

نیا تبصرہ شامل کریں