Graid SupremeRAID
Graid SupremeRAID (Graid Technology’s SupremeRAID) با تعیین استانداردهای جدید حفاظت از دادهها و حفظ عملکرد، بهویژه برای بارهای کاری مدرن مانند هوش مصنوعی و محاسبات با کارایی بالا (HPC)، در حال بازتعریف چشمانداز ذخیرهسازی اطلاعات است.
پیکربندیهای سنتی رید که برای پاسخگویی به تقاضای محیطهای داده محور، بهویژه هنگام بهکارگیری کارتهای رید سختافزاری مورد استفاده قرار میگیرند با محدودیتهایی همراه هستند، زیرا گذرگاه PCIe عامل بروز مشکلات مختلفی مثل گلوگاه است. اکنون، Technology Graid اعلام کرده است با استفاده از شتابدهی GPU توانسته است بر این مشکل غلبه کند، عملکرد زیرساخت محاسباتی را حفظ کند و میزان استفاده از پردازنده مرکزی را به حداقل برساند، در حالی که حفاظت یکپارچه و قوی رید را در اختیار شرکتها قرار میدهد.
در بارهای کاری پیشرفته مرتبط با هوش مصنوعی و HPC، پیکربندیهایی مثل JBOD سرنام (Just a Bunch of Disks) و رید نرمافزاری (mdadm) مورد استفاده قرار میگیرند. درست است که فناوریهای مذکور، هنگام ترکیب با نقاط بازگشت، راهکار موثری در زمینه پیشگیری از بروز مشکل از دست دادن دادهها ارائه میدهند و به عنوان یک معماری سطح بالا مورد استفاده قرار میگیرند، اما JBOD نقاط شکست بیشتری را معرفی میکند و مدیران IT را با فرآیندهای بازیابی چالشبرانگیز روبرو میکند. رید نرمافزاری انعطافپذیری بالایی در کار با دادهها ارائه میدهد، اما منابع ارزشمند مثل پردازنده مرکزی را برای مدیریت دادههای توازن رید به شکل قابل توجهی مورد استفاده قرار میدهد که باعث کاهش عملکرد و راندمان در انجام برخی از کارها میشود. این در حالی است که SupremeRAID Graid یک راهکار ساده، با عملکرد بالا ارائه میدهد تا مدیریت دادهها، بدون تاثیرگذاری بر سرعت یا قابلیت اطمینان انجام شود.
در این مطلب، سعی کردهایم، عملکرد سیستمهای ذخیرهسازی مختلف مثل Graid SupremeRAID، JBOD و رید نرمافزاری را مورد مقایسه قرار دهیم تا شناخت بهتری از مزایای هریک از فناوریهای مذکور به دست آوردید. در نهایت، نشان خواهیم داد که چرا Graid برای محیطهای فناوری اطلاعات که به عملکرد بالا و حفاظت از دادهها اهمیت زیادی میدهند، بهترین گزینه است.
سیستم مورد استفاده در آزمایش
ما برای این آزمایش، از یک سرور دو هستهای یک یونیت مجهز به پردازنده زئون اینتل نسل پنجم استفاده کردیم. این سرور توان پردازشی و محاسباتی بسیار بالایی دارد و میتواند حداکثر 32 درایو SSD نوع E1.S را پشتیبانی کند. این تعداد دقیقا همان تعداد درایوهایی است که سیستم Graid SupremeRAID SR-1010 میتواند مدیریت کند. سرور ما دارای 32 اسلات حافظه است و میتواند از رمهای RDIMM با ظرفیت 96 گیگابایت و 256 گیگابایت پشتیبانی کند. همچنین، این سرور دارای سه اسلات PCIe نسل پنجم است که امکان اتصال دستگاههای پرسرعت شبکه را فراهم میکند. علاوه بر این، مادربرد این سرور، دارای دو پورت شبکه 1 گیگابیت بر ثانیه و یک پورت مدیریتی است.
این سرور میتواند 32 ماژول حافظه رم (DIMM) را پشتیبانی کند، اما در این آزمایش، ما فقط از 16 ماژول حافظه رم استفاده کردیم. ما هر ماژول را به یک کانال متصل کردیم (1DPC) تا سرعت حافظه را به حداکثر برسانیم. اگر نیاز به فضای بیشتر برای رم داشتیم، میتوانستیم از ماژولهای با ظرفیت بالاتر یا پیکربندی 2DPC استفاده کنیم، اما پیکربندی 2DPC سرعت رم را به 4400MT/s کاهش میدهد.
ماژولهای حافظه رم 96 گیگابایتی DDR5-5600 ECC RDIMM که در این سرور استفاده کردیم، نسبت به قیمتی که دارند، عملکرد سطح بالایی را ارائه میدهند. به همین دلیل، این ماژولها برای کارهایی که به رم پرسرعت و ظرفیت بالا نیاز دارند، یک گزینه جذاب هستند. این ماژولها برای کارهای سنگین محاسباتی و هوش مصنوعی نیز بسیار مناسب هستند.
در این سرور، 32 سینی برای درایوهای SSD E1.S در نظر گرفته شده است که با درایوهای KIOXIA 7.68TB XD7P SSD با ظرفیت 7.68 ترابایت پر شدهاند. این درایوهای SSD از رابط PCIe نسل چهارم x2 استفاده میکنند و حداکثر سرعت خواندن 7.2 گیگابایت بر ثانیه و سرعت نوشتن 4.8 گیگابایت بر ثانیه را ارائه میدهند. شرکت KIOXIA این درایوهای SSD را به طور خاص برای کارهای سنگین در مراکز داده بزرگ و محاسبات با کارایی بالا طراحی کرده است. در این نوع بارهای کاری، مزایای اندازه کوچک درایوهای SSD E1.S بسیار مفید است و به شرکتها اجازه میدهد تا درایوهای بیشتری را روی سرور نصب کنند. نکته مهم دیگر این است که KIOXIA طراحی حرارتی درایوهای XD7P را به گونهای انجام داده است که حتی در شرایط سنگین، بتوانند با چیدمان متراکم به درخواستهای I/O بدون مشکل پاسخ دهند.
مشخصات دقیق سیستم مورد استفاده در آزمایش به شرح زیر است:
سرور Gigabyte S183-SH0-AAV1
دو پردازنده +Intel Xeon Platinum 8592 (64 هستهای، 1.9 گیگاهرتز)
16 ماژول رم 96 گیگابایتی Kingston DDR5-5600
32 درایو KIOXIA XD7P با ظرفیت 7.68 ترابایت از نوع E1.S
سیستم ذخیرهسازی Graid SupremeRAID SR-1010
سیستم عامل Ubuntu 22.04.4 Server
نتایج آزمایش راندمان و عملکرد
کارهای محاسباتی و پردازشی در محیطهای HPC میتوانند روزها، هفتهها یا ماهها اجرا شوند. اگر سیستم ذخیرهساز پشتیبان این فرآیندها، قابل اعتماد نباشد، خرابی یک درایو باعث شود تمام کارها از ابتدا آغاز شوند. برای بررسی تاثیر Graid بر اعتمادپذیری و عملکرد محاسبات HPC و هوش مصنوعی، ما عملکرد سیستم ذخیرهسازی را با استفاده از y-cruncher مورد بررسی قرار دادهایم. هدف ما مقایسه پیکربندیهای مختلف ذخیرهسازی، JBOD، رید نرمافزاری و Graid SupremeRAID بود تا تاثیر آنها بر کارهای سنگین پردازشی را درک کنیم.
پیکربندی RAID
ما میدانیم که رید نرمافزاری mdadm برای دادههای توازن (اطلاعات اضافی برای بازیابی دادههای از دست رفته) سرعت نوشتن بسیار کندتری دارد. اگر از RAID10 استفاده میکردیم، سرعت نوشتن بهتر میشد، اما ظرفیت قابل استفاده به طور قابل توجهی کاهش مییافت. برای بهینهسازی عملکرد RAID5 نرمافزاری، ما دو مخزن RAID5 ایجاد کردیم. این مخازن به طور مساوی بین درایوهای حافظه حالت جامد 0-15 و 16 تا 31 تقسیم شدند تا بار محاسباتی آنها به طور متوازن بین دو پردازنده توزیع شوند.
در ارتباط با Graid، ما از دو مخزن RAID5 استفاده کردیم. این مخازن نیز به طور مساوی بین درایوهای حالت جامد تقسیم شدند، به طوری که نیمی از درایوهای SSD به پردازنده 0 و نیمی دیگر به پردازنده 1 اختصاص یافت تا تعادل NUMA حفظ شود. ما این آزمایش را با یک ولوم روی هر مخزن RAID5 و همچنین دو ولوم روی هر مخزن RAID5 انجام دادیم. در پیکربندی JBOD، هر درایو به صورت جداگانه نگاشت شد تا تعادل NUMA حفظ شود.
ما نتوانستیم رید سختافزاری را در این گزارش لحاظ کنیم، زیرا نحوه اتصال درایوهای SSD در این سرور توسط کارتهای رید سختافزاری سنتی پشتیبانی نمیشوند. با این حال، اگر میتوانستیم از رید سختافزاری استفاده کنیم، بهترین حالت ممکن رسیدن به محدودیت پهنای باند یک اسلات PCIe نسل چهارم x16 برای یک کارت، حدود 28 گیگابایت بر ثانیه، بود.
پیکربندی نرمافزاری
برای سناریوهای مختلف ذخیرهسازی، ما از ابزار آزمایش عملکرد داخلی y-cruncher استفاده کردیم. نتایج آزمایش به عملکرد خواندن و نوشتن متوالی، سرعت ورودی/خروجی محاسباتی، سرعت ورودی/خروجی دیسک و نسبت سرعت ورودی/خروجی دیسک به سرعت محاسبات تقسیم شده است. ما به این دلیل ابزار فوق را انتخاب کردیم که اجازه میدهد همزمان پردازنده، حافظه و ورودی/خروجی دیسک را تحت فشار قرار دهیم تا عملکرد آنها را به دقت ارزیابی کنیم. اگرچه این ابزار هیچ اطلاعاتی در ارتباط با بارهای کاری خاص نشان نمیدهد، اما متوجه شدهایم که دادههای تولید شده توسط آن با عملکرد کلی سیستم در برنامههای سنگین ورودی/خروجی ارتباط نزدیکی دارد. به طور قابل توجه، آزمایش ورودی/خروجی شامل پردازش واقعی دادهها است، نه فقط انتقال سریع دادهها از طریق یک رابط. این کار باعث میشود نتایج آزمایش دقیقتر و بازتاب واقعیتری از عملکرد سیستم در بار واقعی باشد.
لازم به توضیح است که سرعت خواندن و نوشتن متوالی، نشان میدهد که آرایه دیسکها چقدر سریع میتوانند دادهها را بخوانند و بنویسند. سرعت محاسبات نشان میدهد که پردازنده چقدر سریع میتواند دادهها را پردازش کند. سرعت ورودی/خروجی دیسک نشان میدهد که چقدر سریع دادهها میتوانند از دیسکها به پردازنده منتقل شوند. اگر کارهایی که انجام میدهیم نیاز به خواندن و نوشتن دادهها از دیسک دارند، سرعت ورودی/خروجی دیسک باید از سرعت محاسبات بیشتر باشد تا کارها کند نشوند. اگر این نسبت کمتر از 1.0 باشد، دیسکها باعث کند شدن سیستم میشوند. اگر این نسبت بیشتر از 1.0 باشد، پردازنده باعث کند شدن سیستم میشود. برای کارهای سنگین، نرمافزار y-cruncher، بهترین عملکرد را زمانی دارد که این نسبت 2.0 یا بیشتر باشد.
پیکربندی ذخیرهساز |
خواندن متوالی گیگابایت بر ثانیه |
نوشتن متوالی گیگابایت بر ثانیه |
محاسبات گیگابایت بر ثانیه |
ورودی/خروجی دیسک گیگابایت بر ثانیه |
نسبت |
Direct JBOD |
102 |
102 |
18.4 |
81.5 |
4.42 |
Graid RAID5 x 2 2VD |
64.3 |
43.8 |
23.1 |
70.4 |
3.05 |
Graid RAID5 x 2 4VD |
85.2 |
73.7 |
22.1 |
69.4 |
3.14 |
SW RAID5 x 2 |
122 |
3.6 |
25.7 |
10.9 |
0.42 |
وقتی از درایوهای SSD به صورت مستقیم و جداگانه استفاده کردیم (JBOD)، نرمافزار y-cruncher سرعت خواندن 102 گیگابایت بر ثانیه و سرعت نوشتن 102 گیگابایت بر ثانیه را نشان داد. این اعداد در حالت کلی بالاترین سرعت خواندن و نوشتن هستند که نرمافزار y-cruncher میتواند برای این سیستم ارائه دهد، اما در این حالت، هیچ اطلاعات اضافی برای بازیابی دادههای از دست رفته (parity) وجود ندارد.
وقتی از رید نرمافزاری RAID5 با استفاده از mdadm استفاده کردیم، سرعت متوالی خواندن و نوشتن به شدت کاهش یافت. سرعت نوشتن به 3.6 گیگابایت بر ثانیه و سرعت خواندن به 122 گیگابایت بر ثانیه رسید.
وقتی از Graid با دو مخزن RAID5 و دو ولوم استفاده کردیم، سرعت خواندن 64.3 گیگابایت بر ثانیه و سرعت نوشتن 43.8 گیگابایت بر ثانیه بود.
وقتی این پیکربندی را به دو مخزن RAID5 و چهار ولوم تغییر دادیم، سرعت خواندن به 85.2 گیگابایت بر ثانیه و سرعت نوشتن به 73.7 گیگابایت بر ثانیه افزایش یافت.
نسبت سرعت محاسبات به سرعت ورودی/خروجی دیسک نشان میدهد که پردازنده چقدر سریعتر از دیسکها میتواند دادهها را پردازش کند. پیکربندی JBOD بهترین نسبت را داشت (4.43)، در حالی که رید نرمافزاری RAID5 نسبت بسیار پایینی داشت (0.42). RAID5 Graid با دو ولوم نسبت 3.05 و با چهار حجم نسبت 3.14 داشت.
در این آزمایش، برای عملکرد بهینه، نسبت سرعت محاسبات به سرعت ورودی/خروجی دیسک باید 2.0 یا بیشتر باشد. پیکربندی JBOD بهترین نتایج کلی را داشت، اما اطلاعات اضافی برای بازیابی دادههای از دست رفته (parity) را ارائه نمیداد. این حرف بدان معنا است که اگر حتی برای یک لحظه یک درایو خراب شود، دادهها از دست میروند. رید نرمافزاری میتواند دسترسپذیری دادهها و سرعت خواندن بالاتری نسبت به JBOD ارائه دهد، اما سرعت نوشتن آن بسیار کم است و نمیتواند با پردازنده هماهنگ شود. بنابراین، نسبت سرعت محاسبات به سرعت ورودی/خروجی دیسک بسیار پایین است (0.42).
مزایای Graid SupremeRAID: این دادهها نشان میدهند که Graid SupremeRAID چه مزایایی برای این نوع بارهای کاری دارد. عملکرد کلی Graid بین JBOD و رید نرمافزاری قرار میگیرد، اما سرعت خام ورودی/خروجی تنها فاکتور مهم نیست. این آزمایش نشان میدهد که Graid میتواند هم عملکرد مورد نیاز برنامهها را در اختیارشان قرار دهد و هم دسترسپذیری دادهها را تضمین کند. این ترکیب به سازمانها اجازه میدهد از حفاظت رید، ذخیرهسازی و عملکرد برنامه با معماری غیر مسدود کننده (non-blocking) بهرهمند شوند که بسیار فراتر از آن چیزی است که یک کارت رید سنتی میتواند ارائه دهد.
کلام آخر
فناوری Graid SupremeRAID به طور مداوم مرزهای حفاظت از دادهها و عملکرد را جابهجا میکند و در نظر دارد استاندارد جدیدی در صنعت ذخیرهسازی اطلاعات تعریف کند. با استفاده از قدرت شتابدهنده GPU، Graid سرعت و کارایی بینظیری در پیکربندیهای رید ارائه میدهد، فشار بر پردازنده را به طور قابل توجهی کاهش میدهد و در عین حال توان عملیاتی را به حداکثر میرساند.
با توجه به توضیحاتی که ارائه کردیم و آزمایشهایی که انجام دادیم باید بگوییم که Graid میتواند هم یک مکانیزم حفاظت قدرتمند از دادهها را ارائه دهد و هم به نیازهای سختگیرانه کارهای مدرن هوش مصنوعی و محاسبات با کارایی بالا پاسخ دهد. این عملکرد و کارایی به منابع حیاتی سیستم مانند پردازنده، رم و ذخیرهساز اجازه میدهد تا به طور کامل به نیازهای برنامههای کاربردی پاسخ دهند، بدون آنکه شاهد افت محسوس عملکرد زیرساخت یا منابع سیستمی باشیم.
نویسنده: حمیدرضا تائبی