تغییری در معماری داخلی سرورها در حال رخ دادن است، تغییری که قرار است هزینه های مرکز داده را به میزان قابل توجهی کاهش دهد، عملکرد برنامه ها را افزایش دهد و حتی معماری های جدید مرکز داده در سطح رک را معرفی کند. Manoj Sukumaran، تحلیلگر اصلی در Omdia می گوید: «تأثیر روی مراکز داده عمیق خواهد بود. عامل تغییر پروتکلی است که توسط یک کنسرسیوم صنعتی بسیار گسترده و سنگین ایجاد شده است که شامل سیسکو، اینتل، دل، اوراکل، لنوو، HPE، IBM، مایکروسافت، سامسونگ، انویدیا و گوگل است. این پروتکل Compute Express Link (CXL) نام دارد.
وعده CXL
CXL با بهبود اساسی روشی که سرورها از حافظه استفاده می کنند، تغییرات بزرگی را نوید می دهد. این به نفع طیف گستردهای از برنامههای کاربردی است، نه تنها به این دلیل که حافظه حدود 50 درصد از هزینه یک سرور مرکز داده معمولی را تشکیل میدهد، بلکه به این دلیل که محدودیت نهایی در عملکرد سرور اغلب مقدار حافظهای است که پردازندههای آن میتوانند. دسترسی داشته باشید. پروتکل و تأثیر بالقوه آن بر مراکز داده در افق بسیار نزدیک است.
سوکوماران گفت: «ارزیابی های CXL اکنون در حال انجام است. نسل جدیدی از پردازندههای اینتل و بهویژه AMD که از CXL پشتیبانی میکنند در حال توسعه هستند و در نیمه دوم سال جاری افزایش خواهند یافت. این بدان معناست که استقرار CXL از اواخر سال آغاز خواهد شد و در طول سال 2024 افزایش خواهد یافت.
مارک استایمر، تحلیلگر صنعت فناوری اطلاعات و رئیس مشاوران Dragon Slayer Consulting، گفت: «پیشبینی کلی در مورد میزان صرفهجویی پول CXL در مراکز داده بسیار دشوار است. اما اگر CXL همانطور که وعده داده بود عمل کند، مطمئناً صرفهجویی برای تضمین پذیرش گسترده آن بیش از اندازه کافی خواهد بود.» استایمر مطمئن است که CXL به این وعدههای عملکردی عمل خواهد کرد «زیرا حرکت بسیار زیادی پشت آن وجود دارد».
شکستن دیوار حافظه
مشکلات معماری که CXL برای رفع آنها طراحی شده است با چیزی شروع می شود که اغلب دیوار حافظه نامیده می شود. این مشکل در به حداکثر رساندن عملکرد برنامه با اجازه دادن به پردازندهها برای دسترسی به دادهها با همان سرعتی است که میتوانند آنها را پردازش کنند، به طوری که در زمان انتظار برای کار بیکار نمانند. بزرگترین دلایل دشواری سرعت رابط بین پردازنده و حافظه نیست، بلکه هزینه بالای حافظه، مشکل در استفاده کارآمد یا با نرخ استفاده بالا و محدودیت در میزان حافظه یک CPU است. می تواند به سرعت دسترسی داشته باشد، به خصوص در اکثر سرورهایی که حافظه را محکم به CPU متصل می کنند.
در سرورهای استاندارد صنعتی ارزانقیمت، اگر یک CPU نیاز به دسترسی به دادههایی داشته باشد که حافظه آن به اندازه کافی بزرگ نیست تا بهعنوان حافظه پنهان نگهداری شود، دادهها باید از حافظه فلش یا دیسک بسیار کندتر بازیابی شوند و عملکرد را به شدت کاهش دهند. این مشکل حادتر می شود و برنامه های بیشتری را تحت تأثیر قرار می دهد. در یک طرف دیوار، قدرت پردازش CPUها با افزایش تعداد هسته آنها در حال افزایش است و اشتهای آنها را برای داده افزایش می دهد. از طرف دیگر، برنامه های کاربردی داده فشرده مانند هوش مصنوعی و تجزیه و تحلیل نیاز به افزایش حجم داده در حافظه برای دستیابی به عملکرد مناسب دارند.
CXL در مقابل NUMA
یک راه حل توسعه به اصطلاح معماری حافظه غیریکنواخت (NUMA) یا سرورهای بزرگ آهنی است که بر خلاف سایر سرورها به CPU ها اجازه می دهد تا با سرعت بالا به حافظه یکدیگر دسترسی داشته باشند. اما سرورهای NUMA به دلیل سیلیکون اضافی مورد نیاز برای انجام این کار گران هستند. آنها همچنین اجازه نمی دهند که حافظه بدون افزودن CPU های بیشتر افزایش یابد، که با نیاز به نصب CPU های اضافی در صورت نیاز به حافظه بیشتر، حتی اگر به قدرت پردازش اضافی نیاز نباشد، هزینه های بیشتری را نیز تحمیل می کند.
CXL با اجرای بالای پیوندهای اکسپرس (PCie) که قبلاً در سرورها وجود دارند، جایگزینی را ارائه می دهد. ممکن است تعجب آور به نظر برسد که پیوندهای PCIe که برای اتصال درایوهای فلش به CPU استفاده میشوند نیز میتوانند سرعت انتقال دادههای بسیار سریعتر مورد نیاز برای حافظه را فراهم کنند، اما CXL به این امر بهعنوان پروتکلی دست مییابد که دادهها را بهعنوان عملیات ذخیره بار حافظه به جای انتقال IO منتقل میکند.
نتیجه این است که وقتی CXL بر روی آخرین استاندارد PCIe 5 اجرا میشود، دادهها را خیلی سریع و با سرعتهایی شبیه به حافظه جابجا میکند. از آنجایی که از طریق PCIe اجرا می شود، فقط یک روش جدید برای اتصال پردازنده ها به حافظه و افزایش مقدار حافظه ای که آنها می توانند آدرس دهی کنند، معرفی نمی کند. همچنین تنظیم شده است که در جهت مخالف کار کند و به مراکز داده اجازه می دهد تا حافظه کمتری را مستقر کنند.
به گفته جیم هندی، تحلیلگر صنعت فناوری اطلاعات و مدیر کل Objective Analysis، «سازندگان حافظه میگویند CXL به سرورها اجازه میدهد تا از حافظه بیشتری استفاده کنند، که برای کسبوکارشان خوب است، زیرا به این معنی است که حافظه بیشتری میفروشند. در همین حال اپراتورهای مرکز داده می خواهند از آن برای کاهش میزان حافظه مورد نیاز خود برای خرید استفاده کنند. این معمای CXL است.”
کاهش اتلاف حافظه رشتهای
سرورها در زمان های مختلف از مقادیر متفاوتی از حافظه استفاده می کنند و سرورهای مرکز داده استاندارد نمی توانند حافظه استفاده نشده را با سرورهای دیگر به اشتراک بگذارند. با این حال، آنها باید به اندازه کافی حافظه داشته باشند تا نیازهای خود را در هر زمان برآورده کنند. در نتیجه، اپراتورهای مرکز داده چارهای ندارند جز اینکه سرورهایی با ظرفیت حافظه که اغلب استفاده نمیشوند را بیش از حد فراهم کنند. این به اصطلاح حافظه رشته ای ایجاد می کند.
Sukumaran به تخمینهایی اشاره میکند که نشان میدهد این روش بر مقیاسکنندههای بزرگ اثر میگذارد. مایکروسافت تخمین زده است که 25 درصد از حافظه در Azure در هر زمان معینی از بین می رود، در حالی که گوگل بیان می کند که تنها 40 درصد از حافظه در خوشه های تولیدی آن استفاده می شود.
هایپراسکیلرها به دلیل تنوع و غیرقابل پیش بینی بودن حجم کاری که میزبانی می کنند، به شدت از حافظه رشته ای رنج می برند. با این حال، آنها تنها کسانی نیستند که با این مشکل روبرو هستند. سایر اپراتورهای مرکز داده نیز از حافظه رشتهای رنج میبرند، زیرا این امر فقط به دلیل بارهای کاری مختلط و غیرقابل پیشبینی ایجاد نمیشود. همچنین به دلیل پویایی مجازی سازی سرور و این واقعیت است که برنامه ها در زمان های مختلف به مقادیر متفاوتی از حافظه نیاز دارند.
CXL قرار است این اتلاف را به میزان قابل توجهی کاهش دهد و به سرورهای متعدد اجازه میدهد حافظههای مشترکی را به اشتراک بگذارند و فقط از آنچه نیاز دارند و فقط زمانی که به آن نیاز دارند استفاده کنند. این اجازه می دهد تا تامین بیش از حد حافظه به شدت کاهش یابد. ظرفیت اضافی برای برآورده کردن خواستههای اوج هنوز مورد نیاز است، اما میتواند کوچکتر باشد، زیرا در چندین سرور به اشتراک گذاشته میشود که حداکثر تقاضای خود را همزمان ایجاد نمیکنند.
پشتیبانی از CPU برای CXL در حال حاضر در نسخه 2.0 پروتکل است که از شبکههای PCIe پشتیبانی میکند که به چندین سرور اجازه میدهد به یک حافظه دسترسی مشترک داشته باشند. نسخه 3.0 CXL سال گذشته منتشر شد و این پشتیبانی را گسترش داد. اینگونه است که انتظار میرود CXL به چندین سرور اجازه دهد تا حافظه تلفیقی را به اشتراک بگذارد و چگونه تنظیم شده است تا معماریهای سطح رک را با ایجاد قفسههای مرکز داده که شامل شاسیهایی است که حافظه متصل به CXL را برای استفاده توسط سرورها در همان مکان فراهم میکند، تغییر دهد. دندانه دار کردن.
درباره نویسنده
تیم استامرز یک تحلیلگر مستقل صنعت است که تقریباً سه دهه در مورد فناوری اطلاعات می نویسد. او قبلاً تحلیلگر ارشد 451 Research و Omdia بوده است.