ده ها هزار پردازنده گرافیکی انویدیا در ابرخوشه Prometheus متا بیکار نشسته اند و فقط منتظر شکست هستند.
و حقایق جالب دیگر در مورد اینکه چگونه Zuckercorp قصد دارد یک میلیون GPU را به اندازه کافی برای آموزش یک مدل کار کند
زاکرکورپ این هفته فاش کرد که بیش از 11 درصد از پردازندههای گرافیکی در ابرخوشه Prometheus متا در نیو آلبانی، اوهایو، یا مردهاند یا بیکار نشستهاند و منتظرند تا در زمان خروج بعدی وارد عمل شوند.
مجموعه عظیم پردازندههای گرافیکی اضافی تنها یکی از چندین اقدامی است که هایپراسکیلر برای حفظ روند آموزش هوش مصنوعی خود انجام داده است.
Prometheus یکی از بزرگترین استقرارهای محاسباتی متا تا به امروز است. متا میگوید که با استفاده از سیستمهای رک گریس بلکول انویدیا و (به زودی) ورا روبین، این ابرخوشه در نهایت به یک گیگاوات ظرفیت خواهد رسید که حدود یک میلیون شتابدهنده را شامل میشود.
اما همانطور که هر کسی که روی یک کلاستر محاسباتی در مقیاس بزرگ کار کرده است، میداند، چه برای آموزش LLM یا بارهای کاری سنتی HPC، تراشههای بیشتر به ناچار مشکلات بیشتری را به همراه دارد.
در یک گره هشت GPU، احتمال خرابی GPU نسبتا کم است. در یک خوشه 100000 GPU، خرابی اجتناب ناپذیر است. متا در حال ساخت چیزی است که 10 برابر بزرگتر است و نیاز به آموزش توزیع شده در چندین مرکز داده دارد. نگه داشتن کل چیز به اندازه کافی برای رسیدن به ایست بازرسی بعدی به یک سردرد بزرگ تبدیل می شود.
در یک پست وبلاگی که این هفته منتشر شد، متا نگاهی منحصربهفرد به کارهایی که برای جلوگیری از شکستها در توسعه مدلهایی مانند Muse Spark یا جدیدترین نسخه Muse Wonder انجام داده است، ارائه کرد.
GPUهای بیکار هزینه تداوم هستند
هنگامی که متا اولین مرحله استقرار Prometheus خود را در نیو آلبانی آغاز کرد، این شرکت میگوید، تقریبا 1000 وقفه در روز برای هر 8000 GPU را تجربه میکرد.
وقفه به معنای خرابی GPU نیست. منظور آنها صرفا چیزی است که سقوط کرده، شکست خورده یا به پایان رسیده است، که باعث می شود دوره آموزشی متوقف شود و به آخرین ایست بازرسی خوب برگردد.
متا ادعا می کند در سالی که توانسته است تعداد وقفه ها را تا 99 درصد کاهش دهد و به 11 مورد در روز به ازای هر 8000 GPU کاهش دهد.
یکی از راههایی که برای انجام این کار انجام میشود، نگهداشتن برخی از پردازندههای گرافیکی پرومتئوس در ذخیرهسازی است. این خوشه در حال حاضر از ترکیبی از سیستم های GB200 و GB300 پشتیبانی می کند که هر کدام دارای 72 پردازنده گرافیکی در هر دامنه NVLink هستند. با این حال، تنها 64 مورد از آنها در هر لحظه در حال استفاده هستند. هشت مورد دیگر در اصل یدکی داغ هستند.
متا این کار را به این دلیل انجام داد که یک پردازنده گرافیکی از کار افتاده، کل رک را بیرون میآورد و دوره آموزشی را قطع میکند. اکنون، زمانی که یک GPU از کار بیفتد، یکی از قطعات یدکی میتواند جای خود را بگیرد. در حالی که این باعث صرفه جویی در زمان می شود - متا مجبور نیست کل رک را از خوشه رها کند یا منتظر بماند تا کسی جزء معیوب را تعویض کند تا دوباره آموزش را شروع کند - یک GPU ناموفق همچنان منجر به وقفه می شود، هرچند کوتاهتر.
انعطاف پذیری موازی
برای کاهش این موضوع، متا از این واقعیت استفاده کرد که مشاغل آموزشی در مقیاس بزرگ معمولا از موازی سازی داده ها استفاده می کنند، جایی که چندین نسخه از مدل در داخل خوشه ساکن هستند.
متا توضیح داد: «زمانی که میتوان یک خطا را به مدل موازی دادهای جدا کرد، ما تأثیر خرابی سختافزار را با اجازه دادن به یک نسخه معیوب آفلاین کاهش میدهیم، در حالی که خوشه باقیمانده آن مرحله را تکرار میکند و به آموزش سازنده ادامه میدهد.» "برش به خطر افتاده به سادگی در میزبان های یدکی موجود مجددا راه اندازی می شود و مجددا همگام می شود، و یک توقف کلی سیستم را به یک کاهش جزئی و موقت در توان کل تبدیل می کند."
به عبارت دیگر، اجراهای آموزشی متا تنها در صورتی قطع میشوند که خطا از دامنه موازی دادهها فراتر رود. هنگامی که این اتفاق می افتد، این شرکت یک طرح جامع چک پوینتینگ را اجرا کرده است، که می توانید کمی مانند ذخیره خودکار یا تاریخچه تجدید نظر در نظر بگیرید. به این ترتیب، اگر چیزی شکست بخورد، متا مجبور نیست از اول شروع کند.
این شرکت نوشت: «معماری نقاط بازرسی توزیعشده ما بهطور ناهمزمان وضعیت مدل - از جمله گرادیانها و دادههای بهینهساز - را در فضای ذخیرهسازی چند لایه ذخیره میکند.»
دردهای رشد NVLink
متا میگوید یکی از سختترین چالشها این بود که پارچههای NVLink که برای اتصال 72 پردازنده گرافیکی استفاده میشوند، مانند یک شتابدهنده بزرگ عمل کنند. سیستمهای اولیه مبتنی بر H100 و H200 تنها دارای هشت GPU در هر دامنه NVLink بودند، که به این معنی بود که پیوندها بسیار کوتاهتر و تعداد کمتری بودند. اما این قابلیت با نسل Blackwell انویدیا 9 برابر افزایش یافت.
این شرکت نوشت: "با بیش از 600000 اتصال NVLink، حتی کاهش سیگنال حاشیه ای باعث ایجاد چرخه های بازیابی مکرر NVLink می شود."
برای غلبه بر این، متا مجبور شد یک سیستم تله متری پیوسته را پیاده سازی کند و سوختگی های تشخیصی L11 را برای جداسازی پیوندهای ضعیف قبل از تولید سیستم ها انجام دهد.
قدرت چالش دیگری بود. بالا و پایین کردن دهها هزار پردازنده گرافیکی برای یک دوره آموزشی میتواند باعث افزایش شدید مصرف انرژی به نام گذرا شود که میتواند تجهیزات منبع تغذیه را تحت تأثیر قرار دهد.
به گفته متا، با تمرکز بر پایداری و قابلیت اطمینان خوشه خود، توانست به بیش از 85 درصد «بازده خوب» - معیاری از توان مفید - برای پیشآموزش و بیش از 90 درصد برای یادگیری تقویتی در آخرین مدل Muse Wonder خود دست یابد.
جاه طلبی های این شرکت در اینجا متوقف نمی شود. همانطور که به سمت یک میلیون پردازنده گرافیکی پیش می رود، متا امیدوار است که نرخ وقفه خود را به تنها دو در روز برای هر 8000 پردازنده گرافیکی یا حدود 100،000 GPU-ساعت میانگین زمان بین وقفه ها کاهش دهد. ®
متن اصلی (انگلیسی)
Tens of thousands of Nvidia GPUs sit idle in Meta's Prometheus supercluster, just waiting for a failure
And other fun facts about how Zuckercorp aims to keep a million GPUs running long enough to train a model