تست استرس سخت‌افزاری از مسعود علیخانی

بررسی تست­های استرس در سخت‌افزار سِروِرها و معرفی و مقایسه ابزارهای آن‌ها (HST  )

تهیه و تنظیم: مسعود علیخانی

چکیده

“تست استرس سخت‌افزاری” یک ابزار ساده و درعین‌حال قدرتمند در زمینه تست قطعات سخت‌افزاری در یک کامپیوتر یا سِروِر بوده که با قرار دادن قطعه سخت‌افزاری در شرایطی که بتوان از قدرت و قابلیت­های واقعی آن مطلع شد، انجام می­گیرد. همان‌طور که می‌دانید، انتخاب سخت‌افزار مناسب برای یک سیستم رایانه‌ای، رابطه مستقیمی با نیاز کاربر دارد و ممکن است یک پردازنده، متناسب با نیاز یک کاربر یا یک سرویس باشد و در مقابل، همین پردازنده به‌هیچ‌وجه پاسخگوی نیاز کاربر یا سرویس دیگری نباشد. ازاین‌رو،  بسیاری از متخصصان کامپیوتر بر این باور هستند که در بازار تبلیغاتی قطعات سخت‌افزاری، چندان نباید به‌عنوان و برند محصولات توجه کرد بلکه هر قطعه باید عملکرد واقعی خود را به‌طور دقیق در عمل نشان دهد.

از مزایای انجام ِ تست استرسِ مناسب، می­توان به موارد زیر اشاره کرد:

  • صرفه‌جویی در هزینه­ها ( ازآنجاکه در سازمان صداوسیما، قطعات کامپیوتری و سِروِرهای زیادی استفاده و خریداری می­شود، با انجام تستِ استرسِ مناسب، می­توان قطعاتِ مناسبی برای هر کار خریداری کرد که این اقدام سبب بالا رفتن عمر مفیدِ قطعات و کاهش خرابی­ها و صرفه‌جویی در منابع مالی سازمان، خواهد شد.)
  • بهینه‌سازی در مدیریتِ توزیعِ تجهیزات و قطعات ( اختصاص سیستم مناسب برای هر کار )
  • رسیدن به قابلیت اطمینان بالا و پایداری مناسب
  • صرفه‌جویی در وقت

مقدمه و شرح مطلب

“تست استرس” ، به‌طورکلی یک ابزار مهم در مدیریت ریسک است و در حقیقت باری است که به‌صورت عمدی جهت تست توان، پایداری و قابلیت­های موجود ، به قطعه اعمال می­شود و قطعه را در شرایط غیر طبیعی تست می­کند تا بتواند به اطلاعات موردنیاز خود دست یابد.

مهندسیِ قابلیت اطمینان ( RELIABILITY ENGINEERING ) یک زیرشاخه از مهندسی سیستم است که بر توانایی عملکرد تجهیزات بدون خرابی (FAILURE) تأکید می‌کند. قابلیت اطمینان ، توانایی عملکرد یک سیستم یا یک بخش را در شرایط مشخص و برای مدت‌زمان مشخص، توصیف می‌کند.  اصطلاح استرس (STRESS  ) ممکن است در بعضی از شاخه‌های علوم و صنایع ، مانند علم مواد ، معنای دیگری  داشته باشد و بنابراین در آن علوم، از اصطلاح دیگری به‌جای تست استرس استفاده کنند. مثلاً در علم مواد، این آزمون با نام تستِ خستگی و فرسودگی ( FATIGUE TEST ) شناخته می­شود.( مثل شکل 1 ). به‌عنوان نمونه‌ای دیگر، در علم پزشکی نیز، آزمونی بنام تست “استرس قلب” وجود دارد که بنام “تست ورزش” نیز شناخته می­شود. این آزمون در حقیقت، یک ارزیابی از وضعیت و عملکرد قلب است که توانایی پاسخگویی قلب به استرس و فشار خارجی را در یک محیط کنترل شده ارزیابی می‌کند. همچنین تست استرس با نام “TORTURE TEST ”  نیز شناخته می­شود. کلمه TORTURE به معنای رنج و شکنجه و عذاب است.

شکل1: تستِ استرس در یک میله فلزی

 

تا وقتی تست استرس در حال انجام است، بنا به نیاز، موارد مختلفی بررسی می­شود . مثلاً در آزمون استرس قلب(تست ورزش)، ضربان قلب، فشار خون، نوار قلب و تنفس بررسی می­شوند. در تست استرسِ قطعات سخت‌افزاری نیز، پارامترهای مربوط به خود بررسی می­شوند. مثلاً در تست استرس CPU ، ولتاژ اعمال شده، فرکانس هسته­ها، دمای تولید شده، میزانِ بارِ کاری ( WORKLOAD ) و نوع وظایف ( TASK ) اعمال شده ، میزان و نحوه استفاده از رم ، فعالیت تمامی هسته­ها و توان پردازشی و… بررسی می­شوند. ( نکته : بخشی از تست استرس CPU ، مربوط به رم است. )

بهترین نوعِ تست سخت‌افزاری در قطعات کامپیوتری، زمانی انجام می­گیرد که قطعات ( شامل هارد ، رم ، CPU ، GPU و … ) در شرایط واقعی قرار بگیرند. ولی ازآنجاکه ریسک انجام ِ این کار، بالاست و امکان کنترل بر روی قطعه مورد آزمون و حتی بر روی کل دستگاه، محدود می‌شود، بنابراین نرم‌افزارهایی وجود دارند تا بدون اینکه لازم باشد که قطعه در شرایط واقعی تست شود؛ آن را در یک محیط مشخص و قابل کنترل، به‌صورت نرم‌افزاری تست می­کنند. این نرم‌افزارها را می­توان با عنوان “نرم‌افزارهای تست استرس سخت‌افزار” (HSTS) یا “ابزارهای تست استرس سخت‌افزار” نام برد. آن‌ها معمولاً سیستم را در یک سطح بالاتر از توقع قرار می­دهند. این سطوح می­توانند در مورد میزان بارِ کاری روی قطعه سخت‌افزاری، نوع بار کاری، ولتاژ اعمالی به قطعه، میزان CLOCK، بار دمایی و…. بیان شوند. در کنار این ابزارها، نرم­افزارهای BENCHMARKING نیز وجود دارند که در طی کردن بخشی از مسیرِ دستیابی به هدف این بحث، با یکدیگر همراه‌اند.

 

به همین جهت ازآنجاکه هر دو نرم‌افزارهای BENCHMARKING و STRESS TEST با هدف رسیدن به بالاترین کارایی ( PERFORMANCE ) و اندازه‌گیری آن کار می­کنند، ممکن است با هم در بعضی موارد، اشتراک داشته باشند. ولی نرم‌افزارهای تست استرس، در حقیقت سعی می­کنند تا سیستم را مجبور به شکست ( FAIL ) کنند تا میزان توان و  پایداری و … را بررسی کنند. ولی نرم‌افزارهای BENCHMARKING، سعی می­کنند تا با اعمال یک وظیفه و کار ( بار) مشخص به قطعه( که قاعدتاً یک بارِ سنگینی است)، بیشترین کارایی را اندازه‌گیری کنند. علاوه بر آن در تست­های BENCHMARKING ، ممکن است بخشی از عملکرد یک قطعه تست شود. ولی در تست­های استرس، باید عملکرد سایر بخش­های قطعه یا سیستم نیز بررسی شوند.( چون هدف، تست پایداری در کل قطعه یا سیستم است.)

تست­های استرس سخت‌افزاری ، موضوعی و خاص بوده و باتوجه به نحوه استفاده از سیستم، متفاوت هستند. به‌طور مثال، تست استرس برای سِروِری که به‌صورت 7/24 ساعت ( یعنی به‌صورت تمام وقت – 24 ساعت در روز و هفت روز در هفته_ ) اجرا می‌شود و یا سِروِری که  وظایف حساس به خطا مانند ” توزیع بسته‌های نیازمند به رندر ” را انجام می‌دهد ، با تستی که برای اجرای یک بازی سنگین با قابلیت اطمینان مناسب، باید انجام بگیرد متفاوت است. هر تست، با توجه به گزینه‌های مورد نظر (پارامترهای قابل پوشش)، تجهیزات موجود و نوعِ ریسکِ مناسب (به‌عنوان پیش‌نیازهای طراحیِ تست) طراحی می‌شود.

نرم‌افزارهای متنوعی در مورد ” تست استرس قطعات سخت‌افزاری ” وجود دارند که فقط برخی از آن‌ها توسط شرکت­های سازنده قطعات کامپیوتری تأیید شده­اند. چند مورد از آن‌ها عبارت‌اند از :

1)  BURNIN TEST

2)HEAVY LOAD

3)IPDT

4)AIDA64 EXTREME EDITION

لازم به ذکر است که هریک از این نرم‌افزارها، تست­های خاصی را با روش‌های خود بر روی قطعات سخت‌افزاری انجام می­دهد. ولی در بین آن‌ها، نرم­افزارهای AIDA64 EXTREME EDITION و BURNIN TEST قدرت و قابلیت­های بیشتری را ارائه می­دهند که به بیان و مقایسه آن‌ها اکتفا می­کنیم.

 

الف- نرم‌افزار AIDA64 EXTREME EDITION

قابلیت­های مهم این نرم‌افزار عبارت‌اند از:

  • اطلاعات جامع در مورد Motherboard ، CPU ، RAM و تمامی اجزای سخت‌افزاری سیستم
  • تست RAM ، CPU ، GPU ، HDD ، COOLING ، مانیتور و …
  • تست پایداری و استقامت سیستم
  • ارائه  BENCHMARK های متنوع و …

 

نحوه کار و عملکرد این نرم‌افزار به شرح زیر است.

پس از باز کردن نرم‌افزار، پنجره اولیه به‌صورت شکل 2 نمایش داده خواهد شد.

شکل2: صفحه اولیه نرم‌افزار AIDA64

 

همان‌طور که در شکل 2 مشاهده می­شود، تمامی اجزای سیستم نشان داده شده است. با انتخاب هرکدام از آیکن­ها، مشخصات مربوط به آن بخش به‌صورت کامل و با جزئیات نمایش داده می­شود. به‌طور مثال با انتخاب آیکن “مادربرد”،  شکل 3 نشان داده می­شود.

شکل3: زیرمجموعه‌های بخشِ مادربرد در نرم‌افزار AIDA64

 

همان‌طور که در شکل 3 مشخص است، زیرشاخه­هایی مربوط به CPU ، RAM ، MOTHERBOARD ، SPD  و … را می­توان مشاهده کرد. همچنین با انتخاب هریک از زیرشاخه­ها، جزئیات کاملی از آن به نمایش درمی­آید.

ولی وظیفه اصلی این نرم­افزار ، تست استرس بر روی قطعات سخت‌افزاری است. بدین منظور ابزار SYSTEM STABILITY TEST” ” را از نوار ابزار انتخاب می­کنیم.

در این صورت، پنجره­ای به شکل 4 باز می­شود. در این پنجره می­توان هر قطعه­ای را به‌صورت جداگانه یا هم‌زمان با سایر قطعات مورد آزمون قرار داد. گزینه­های مورد تست، در قسمت سمت چپ در بالای پنجره قرار دارند که با انتخاب هریک از آن‌ها می­توان تست را شروع کرد. به‌طور نمونه اگر بخواهیم پردازنده سیستم را تحت تستِ استرس قرار دهیم، گزینه STRESS CPU را انتخاب و دکمه START را کلیک می­نماییم. در این صورت مطابق با شکل 5، استرس شدیدی به پردازنده وارد می­شود و بار کاری آن به نزدیک 100% می­رسد. همچنین در این حالت می­توان برخی از انواع دستورالعمل­های ارسالی جهت تست CPU را از طریق زبانه PREFERENCES انتخاب کرد.

شکل4: پنجره SYSTEM STABILITY TEST در ابزار AIDA64

شکل5: قرار گرفتن پردازنده در تستِ استرس با ابزار AIDA64

 

از ویژگی­های این نرم‌افزار این است که می­توان هم‌زمان پارامترهای دیگری را نیز بررسی کرد. یعنی تا وقتی در حال تست پردازنده هستیم (بار کاری پردازنده را بالا برده­ایم) ، می­توان ولتاژ هسته­های پردازنده، دور فن­ها ، فرکانس کاری پردازنده، دمای پردازنده و مادربرد و …. را نیز مشاهده و بررسی کرد.( همانند شکل­ 6 )

شکل6: بررسی چندین پارامتر به‌صورت هم‌زمان با یکدیگر در ابزار AIDA64

از دیگر قطعاتی که امکان تست استرس توسط این نرم‌افزار بر روی آن وجود دارد، هارد دیسک است. هارد دیسک­ها به دلیل اینکه سرعت پایینی در ارسال و دریافت اطلاعات دارند، یکی از گلوگاه‌های سیستم کامپیوتری به‌حساب می­آیند. بنابراین جزو قطعاتی هستند که تست استرس بر روی آن‌ها اهمیت بالایی دارد. ( با انتخاب گزینه STRESS LOCAL DISKS )

 

ب- نرم‌افزارBURNIN TEST

قابلیت­های مهم این نرم‌افزار عبارت‌اند از:

  • اطلاعات مختصر در مورد اجزای سخت‌افزاری سیستم
  • تست RAM ، CPU ، GPU ، HDD ، BLUETOOTH، ODD ، USB ، NETWORK ، و …
  • تست پایداری و استقامت سیستم
  • انجام BENCHMARK و …

 

نحوه کار و عملکرد این نرم‌افزار به شرح زیر است.

پس از باز کردن نرم‌افزار، پنجره اولیه به‌صورت شکل 7 نمایش داده خواهد شد.

شکل7: پنجره اولیه نرم­افزار BURNIN TEST

 

این نرم‌افزار بر خلاف نرم‌افزار AIDA64 ، امکان ارائه مشخصات کاملی از قطعات سخت­افزاری همراه با جزئیات را ندارد و فقط مشخصات کلی سیستم را بیان می­کند. در شکل 7 با انتخاب هریک از قطعاتی که در پایین صفحه وجود دارد، آن سخت‌افزار به لیست مورد تست افزوده می­شود. به‌طور مثال در شکل 7، پردازنده و هارد دیسک، مورد تست قرار می­گیرند. حال با استفاده از منوی TEST و گزینه START TEST RUN ، تست آغاز می­شود. همان‌گونه که قبلاً بیان شده بود، هر نرم‌افزاری برای تست، با روش و الگوهای خود، کار می­کند. روش‌های استفاده شده برای تست در این نرم‌افزار، با نرم‌افزار قبلی ( AIDA64 EXTREME EDITION ) متفاوت است. به‌طور مثال در این نرم­افزار از طریق پنجره TEST PREFERENCES برای تست هر قطعه سخت‌افزاری، می­توان میزان بار کاری بر روی قطعه و بسیاری از تنظیمات مهم در تست ( از جمله نوع دستورالعمل ارسالی جهت تست CPU و … ) را تعریف کرد . یعنی اگر برای  CPU، بار کاریِ 50% تعریف شده باشد، بار، در دوره‌های  مشخص، به 100% می­رسد سپس کم می­شود. ولی همچنان قابلیت­های پردازنده بررسی می­شود. این موضوع به معنای بررسی قابلیت­های قطعه و البته بدون مختل کردن عملکرد قطعه است. در نهایت و پس از پایان تست، تصویری مطابق با شکل 8 به نمایش درخواهد آمد. کلمه TEST PASSED به معنای سالم بودن قطعه و فائق آمدن بر تست­های انجام شده است.

شکل8: موفقیت قطعه سخت­افزاری در تست­های انجام شده توسط ابزار BURNIN TEST

 

در این نرم­افزار نیز برای نمایش دما (به‌عنوان یک عامل بسیار مهم و حساس در تجهیزات الکترونیکی)، نظارت (مانیتورینگ) مناسبی قرار داده  شده است. همان‌طور که در شکل 9 مشخص است، برای تعدادی از قطعات به‌صورت پیش‌فرض، دما به‌صورت نمودار و عدد نشان داده می­شود. همچنین می­توان برای آن‌ها بیشینه تعیین کرد که در صورت رسیدن دمای قطعه به آن حد، عملیات تست متوقف شود. لازم به ذکر است که این نرم‌افزار، امکان نمایش ولتاژها و جریان­ها ، دور فن­ها و فرکانس نقاط مختلف سیستم را ندارد. ولی در صورت نصب یک نرم‌افزار جانبی مثل HWMONITOR می­توان همه این موارد را مشاهده کرد.

شکل9: نمودار مربوط به دمای قطعات سخت­افزاری در ابزار BURNIN TEST

 

مقایسه و نتیجه‌گیری:

بر اساس مطالب ارائه شده در متن مقاله، ابزارهای(نرم­افزارهای) ارائه شده، در بسیاری ازموارد، مشترک بوده در چند مورد با یکدیگر رقابت می­کنند که در ادامه ذکر می‌شود. با مروری بر روی قطعات قابل آزمون در هر دو نرم­افزار، مشاهده می‌شود که اغلب قطعات اصلی نظیر حافظه و پردازنده و هارد دیسک و … برای تست در هر دو نرم‌افزار وجود دارند ولی بسیاری دیگر از قطعات جانبی مثل بلوتوث، امکانی برای تست در نرم‌افزار AIDA64 ندارند. بنابراین به لحاظ تعداد قطعات قابل تست و قدرتِ تست ( انجام تنظیمات دلخواه برای تستِ هر قطعه )، در ابزار (نرم­افزار)BURNIN TEST  قدرت بیشتری مشاهده می­شود. همچنین تستی که در آن  صرفاً قابلیت­های قطعه سخت‌افزاری( نه توان کاری آن) بدون درگیر و مختل کردن موقت عملکرد آن قطعه(حتی بخشی از قطعه) مد نظر باشد امکان مهمی است که فقط در نرم­افزار BURNIN TEST وجود دارد.

ازطرف دیگر، در نرم‌افزار AIDA64 این امکان وجود دارد که مشخصات تمامی قطعات سخت‌افزاری را به‌صورت ریز و دقیق ارائه کند که البته این ویژگی در ابزار BURNIN TEST با این حد از دقت و جزئیات، وجود ندارد. همچنین قابلیت مهمی در نرم‌افزار AIDA64 وجود دارد و آن هم این است که تا وقتی این نرم­افزار در حال تست قطعاتی مثل پردازنده است، می­توان ولتاژ هسته‌های پردازنده، دور فن­ها، میزان CLOCK در پردازنده و … را به‌صورت آنلاین مشاهده و بررسی کرد. این موضوع، در بررسی­های ریشه­ای عیوب و مشاهده عملکرد سیستم بسیار مفید است.

در نهایت می­توان گفت؛ در هر دو ابزار، قابلیت­هایی دیده می‌شود که در دیگری وجود ندارد و یا عملکرد آن به خوبی نرم‌افزار دیگر نیست. پس بهتر است که از هر دو ابزار در کنار هم  استفاده شود. البته در این صورت( استفاده از هر دو ابزار)، یک مجموعه کامل از ابزارهای تست و آزمون استرس  در قطعات سخت‌افزاری را خواهیم داشت.

منابع

[1] J. W, “Stress Testing Software to determine Fault Tolerance for Hardware Failure and Anomalies”, IEEE , 978-1-4673-0700-0, 2012

[2] PASS MARK SOFTWARE, “BurnInTest V8.1 Users Guide”, 2017

[3] T. Adrian Hill, “Stress Testing Embedded Software Applications”, Embedded Systems Conference, 2007

[4] J. Esquiagola, L. Costa, P. Calcina, G. Fedrecheski and M. Zuffo, “Performance Testing of an Internet of Things Platform”, In Proceedings of the 2nd International Conference on Internet of Things, Big Data and Security (IoTBDS), pp. 309-314, 2017

[5] Fujitsu, “ServerView Online Diagnostics”,2018

[6] S. Wilson, S. Lin, “Techniques for Testing Performance/Scalability and Stress Testing ADF Applications”, Oracle Corporation, 2011

[7] T. Barclay, W. Chong, J. Gray, “A Quick Look at Serial ATA (SATA) Disk Performance”, Microsoft Research, 2003

 

Hide picture