اگر امروز برای مدیریت خوشههای GPU خود از صفهای ساده استفاده میکنید، احتمالاً نیمی از سرمایه سختافزاری شما در ساعات کمترافیک به جای تولید ارزش، صرف استراحت شده است. یک تخصیصکننده (Allocator) آگاه از محدودیتها میتواند تنها با تغییر ترتیب تصمیمات تخصیص، ۳۳ درصد از ظرفیتهای بیکار سختافزار را بازیابی کند.
به نقل از گزارشی که در ۱۷ اوت ۲۰۲۶ در huggingface.co منتشر شد، این سامانه در مقایسه با زمانبندهای استاندارد «اولین ورودی-اولین خروجی» (FIFO)، خروجیهای وزندهیشده بر اساس اولویت را تا ۱۰۵ درصد افزایش میدهد. اکثر خوشههای هوش مصنوعی سازمانی در حال حاضر از یک شکاف بهرهوری رنج میبرند؛ آنها مدیریت GPU را مانند یک صف ساده میبینند که در زمان کمبود منابع شکست میخورد. این ناکارآمدی یک محدودیت سختافزاری نیست، بلکه یک شکست در زمانبندی است. این موضوع یادآور این نکته است که بسیاری از هزینههای بالای پردازشی، بیش از آنکه به دلیل ماهیت مدلها باشد، ناشی از ناکارآمدی پلتفرمها در مدیریت منابع GPU است. تصور کنید یک شرکت هواپیمایی هواپیماها را به هر کسی که زودتر تماس گرفته اختصاص دهد، اما در نهایت متوجه شود هیچ پروازی برای سودآورترین مسیرها باقی نمانده است. GPUها نصب شده بودند، متعهد شده بودند و در حال استهلاک بودند؛ اما سود واقعی در نحوه مصرف آنها نهفته بود.
هزینه زمانبندی FIFO
زمانبندهای سنتی FIFO دو نوع اتلاف اصلی ایجاد میکنند. اول، «مالیات رزرو» است. استنتاج بلادرنگ (Real-time inference) نمیتواند منتظر ظرفیت بماند؛ GPUها باید دقیقاً در لحظه پیک ترافیک در دسترس باشند. از آنجایی که FIFO هیچ مکانیسمی برای آزادسازی GPUها در زمان کاهش تقاضا و بازپسگیری آنها پیش از پیک بعدی ندارد، تنها راه تضمین در دسترس بودن این است که حداکثر تقاضای روزانه برای تمام ۲۴ ساعت رزرو شود.
اگر برنامهای در ظهر به ۶ عدد GPU نیاز داشته باشد اما در ساعت ۴ صبح تنها ۲ عدد، آن ۴ پردازنده بیکار برای کل روز قفل میمانند و برای هیچ کار دیگری در دسترس نیستند. آنها نه در حال استفاده هستند و نه آزاد. به همین دلیل است که بهرهوری پایه در سناریوهایی که رزرو غالب است، نزدیک به نیمی از خوشه است: ۵۱.۶٪ در حالت کنترل ترکیبی و ۵۳.۶٪ در موارد با تمرکز بر آموزش.
دوم، «هزینه ترتیب» است. در شرایط تداخل واقعی، اینکه کدام شغلها در خوشه جا شوند، به ترتیب قرارگیری بستگی دارد، نه فقط به ظرفیت کل. ترتیب، صرفاً یک معیار برای شکستن تساوی پس از تعیین ظرفیت نیست؛ بلکه ترتیب خود یک تصمیم درباره ظرفیت است. FIFO شغلها را به ترتیب ورود قرار میدهد، بدون اینکه ارزش آنها را بسنجد یا بررسی کند که چه کارهای دیگری باید در افق زمانبندی جای بگیرند. کارهای با اولویت بالا پشت هر درخواستی که زودتر رسیده است منتظر میمانند و ظرفیت در جایگاههایی اشغال میشود که کارهای بعدی نمیتوانند از آن استفاده کنند.
این دو هزینه با هم ترکیب و تشدید میشوند. بلوکی که برای حداکثر تقاضای بلادرنگ روزانه نگه داشته شده است، در هر ساعت برای هر شغل دستهای (Batch) در صف، از دسترس خارج است. هر آنچه باقی میماند، به ترتیبی که درخواستها اتفاقاً رسیده باشند، توزیع میشود. GPUهایی که تمام روز برای پیکی که تنها چند ساعت طول میکشد رزرو شدهاند، عملاً مانند هواپیماهای زمینگیر هستند: در حالت آمادهباش، بدون درآمد و غیرقابل دسترس برای دیگران.
سازوکار تخصیصکننده جدید
این سامانه رزروهای ایستا را با یک منحنی تقاضای پویا جایگزین میکند. این سیستم استنتاج بلادرنگ را انعطافپذیر میبیند و اجازه میدهد کارهای دستهای در زمانهای کمترافیک (Troughs) جایگزین شوند. برای تضمین امنیت، سیستم از یک تابع هدف مبتنی بر جریمه استفاده میکند که در آن، عدم پاسخگویی به تقاضای بلادرنگ ۵ تا ۱۰ برابر پرهزینهتر از پاداش تکمیل یک کار دستهای است. این عدم تقارن باعث میشود تعهدات تأخیر (Latency) در لایه بهینهسازی اعمال شوند، نه توسط یک مقیاسدهنده خودکار (Autoscaler) مجزا و رقیب.

این تخصیصکننده چهار نوع بار کاری را در دو شکل تخصیص مدیریت میکند. دشواری مسئله در تداخل این دو شکل ناسازگار است که برای سختافزار یکسان در یک گام زمانی رقابت میکنند:
- بارهای کاری دستهای (Batch-like): شامل آموزش (Training)، استنتاج دستهای و کوانتیزاسیون (Quantization). اینها پس از شروع، به یک بلوک متصل از GPUها نیاز دارند که بدون وقفه تا زمان تکمیل نگه داشته شود. در این گروه، ناهمگونی بالاست؛ کارهای آموزشی میتوانند از چند ساعت تا چندین روز و از یک GPU تا دهها پردازنده متغیر باشند.
- بارهای کاری انعطافپذیر (Elastic): استنتاج بلادرنگ که توسط منحنی تقاضا هدایت میشود و در هر گام زمانی، همگام با ترافیک، رشد یا کوچک میشود.
محدودیتها و مکانیسمهای فنی
برای جلوگیری از قوانین تجربی (Heuristic) که در مقیاس کلی شکست میخورند، سیستم مسئله را به صورت یک مدل رسمی مینویسد. برخی محدودیتها، مانند بلوکهای متصل یا بودجهای برای جابجایی GPU (Churn)، تنها به صورت جهانی قابل بیان هستند. سیستم یک تخصیص قانونی را از طریق پنج محدودیت سخت تعریف میکند:
- اشغال تکگانه: هر GPU در هر گام زمانی حداکثر به یک شغل خدمت میکند.
- بازه تقاضا: هر شغل محدوده تقاضای خود را رعایت میکند؛ هر آنچه از قبل در حال اجراست، به ارث رسیده و نگه داشته میشود.
- پیوستگی: کارهای دستهای باید بلوکهای متصل از GPUها را اشغال کنند که اندازه آنها توانی از عدد ۲ باشد.
- سقف جابجایی (Swap Caps): کارهای بلادرنگ سقف سختی برای تعداد GPUهایی دارند که میتوانند بین گامهای زمانی متوالی جابجا کنند.
- عدم پیشدستی (Non-preemption): شغلی که شروع شده است، نمیتواند متوقف شود.
تابع هدف، دو عبارت را متوازن میکند. تخصیص یک GPU به یک شغل دستهای، پاداشی برابر با اولویت آن ضرب در یک وزن کاهش زمانی (Time-decay weight) به دست میدهد. عدم پاسخ به تقاضای بلادرنگ، جریمهای متناسب با اندازه کمبود ایجاد میکند.
وزن کاهش زمانی حیاتی است زیرا در یک سیستم آنلاین که شغلهای جدید مدام وارد میشوند، ظرفیتی که اکنون استفاده شود ارزشمندتر از ظرفیتی است که برای آینده وعده داده شود. تا اجرای بعدی زمانبندی، ترکیب بار کاری تغییر خواهد کرد و تخصیص فوری را باارزشتر از وعدههای آتی میکند.
نتایج بنچمارک
در هفت سناریوی بنچمارک که برای تداخل واقعی طراحی شده بودند، تخصیصکننده هم بهرهوری و هم ارزش را بهبود بخشید. بهرهوری از بازه ۵۲-۸۵٪ به ۷۲-۸۸٪ رسید. در یک بار کاری آموزش-محور روی ۸ عدد GPU، بهرهوری از ۵۳.۶٪ به ۸۷.۰٪ جهش کرد و ارزش خروجی بیش از دو برابر (+۱۰۵.۱٪) شد. این نشاندهنده بازیابی ۳۳ واحد از یک دارایی ثابت از طریق بازپسگیری ظرفیتهای رزرو شده است.
| سناریو | بهرهوری | افزایش ارزش | تأخیر |
|---|---|---|---|
| کنترل ترکیبی (۸ GPU، ۱۰ شغل) | ۵۱.۶٪ $ \rightarrow $ ۷۲.۴٪ | ۵۴.۸٪+ | ۱ میلیثانیه |
| تداخل بلادرنگ (۸ GPU، ۸ شغل) | ۷۵.۰٪ $ \rightarrow $ ۸۰.۲٪ | ۲۴.۶٪+ | ۱ میلیثانیه |
| آموزش-محور (۸ GPU، ۱۶ شغل) | ۵۳.۶٪ $ \rightarrow $ ۸۷.۰٪ | ۱۰۵.۱٪+ | ۲ میلیثانیه |
| ترکیبی بزرگ (۱۴ GPU، ۱۶ شغل) | ۷۶.۸٪ $ \rightarrow $ ۸۲.۷٪ | ۴۳.۸٪+ | ۲ میلیثانیه |
| اشباعشده (۸ GPU، ۹ شغل) | ۸۵.۴٪ $ \rightarrow $ ۸۷.۵٪ | ۳۳.۶٪+ | ۱ میلیثانیه |
| تست مقیاس (۶۴ GPU، ۳۰ شغل) | ۴۴.۹٪ $ \rightarrow $ ۴۴.۹٪ | ۱۵.۹٪+ | ۱۵ میلیثانیه |
| اولویت یکسان (۱۴ GPU، ۱۶ شغل) | ۷۶.۸٪ $ \rightarrow $ ۸۷.۵٪ | ۲۳.۱٪+ | ۲ میلیثانیه |
در تست مقیاس شامل ۶۴ پردازنده و ۳۰ شغل، تخصیصکننده ۱۵.۹٪ ارزش وزندهیشده بر اساس اولویت بیشتری ارائه داد، حتی با وجود اینکه بهرهوری خام روی ۴۴.۹٪ ثابت ماند و توان عملیاتی یکسان بود (۲۷ شغل از ۳۰ مورد تکمیل شد). این ثابت میکند که «اشغال بودن» (Occupancy) معیار بدی برای سنجش سودآوری خوشه است؛ خوشه خروجی متفاوتی تولید کرد در حالی که معیارهای داشبورد یکسان بودند.
یک یافته کلیدی، تست «اولویت یکسان» بود. حتی زمانی که به هر شغل اولویت یکسانی داده شد — و هرگونه سیگنال اولویت حذف شد — تخصیصکننده بهرهوری را از ۷۶.۸٪ به ۸۷.۵٪ و ارزش را ۲۳.۱٪ افزایش داد. این ثابت میکند که برنامهریزی جایگذاریها در یک افق زمانی — به جای بررسی تکتک ورودیها — باعث ایجاد بهرهوری ذاتی میشود. تخصیصکننده تمام شغلهای صف را پیش از جایگذاری هر یک میبیند و استخر آزاد را در شکلهایی نگه میدارد که کارهای باقیمانده واقعاً بتوانند اشغال کنند.
حل مسئله پیشبینی
زمانبندی تنها به اندازه پیشبینی تقاضا دقیق است. یک تخمینگر عمومی جواب نمیدهد زیرا چهار نوع بار کاری محرکهای هزینه متفاوتی دارند. سیستم از تخمینگرهای تخصصی استفاده میکند:
- پیشبین آموزش: بر اساس ۲۲ ویژگی، از جمله ۱۰ مدل متغیر آموزشی، عمل میکند. این مدل بین استراتژی (مثلاً تنظیم دقیق کامل در برابر روشهای کارآمد پارامتری مانند LoRA) و تکنیک (SFT, DPO, RLHF, RLVR, CPT) تفاوت قائل میشود. برای مثال، LoRA پارامترهای قابل آموزش را تا ۱۰,۰۰۰ برابر و حافظه GPU را حدود ۳ برابر در مقایسه با تنظیم دقیق کامل کاهش میدهد. DPO با حذف مدل پاداش و حلقه نمونهبرداری RLHF، بهینهسازی را بیشتر میکند.
- پیشبین کوانتیزاسیون: کوانتیزاسیون به جای یک کار پسزمینه، به عنوان یک شغل زمانبندیشده در نظر گرفته میشود، زیرا میتواند ساعتها زمان GPU مصرف کند. پیشبینی بر اساس لایههای کالیبراسیون بر حسب تعداد پارامترها و با مدیریت مجزا برای الگوریتمهایی مثل bitsandbytes، AWQ و GPTQ ساخته میشود، که شامل یک حاشیه ایمنی پیش از گرد کردن به ساعات کامل GPU است.
- پیشبین بلادرنگ: یک پروفایل تقاضای هفتگی که به طور مداوم بازسازی میشود و از تاریخچه ترافیک ساعتی استفاده میکند. این پیشبینی جایگزین رزرو پیک میشود و به زمانبند اجازه میدهد GPUها را در زمانهای کمترافیک با اطمینان از بازپسگیری آنها پیش از پیک بعدی، آزاد کند.
برای جلوگیری از «اثر پایان جهان» — جایی که بهینهساز به دلیل عدم دید به فراتر از افق خود، تصمیمات بد فعلی میگیرد — سیستم یک پنجره ۲۴ ساعته را بهینه میکند اما فقط گام زمانی فعلی را متعهد (Commit) میکند. سیستم هر ۳۰ تا ۶۰ دقیقه دوباره اجرا میشود و خطاهای پیشبینی را از طریق بهینهسازی مداوم جذب میکند. هر اجرا، آنچه را که در حال اجراست به ارث میبرد و آن را در جای خود تثبیت میکند تا از نوسانات شدید (Thrashing) جلوگیری شود. برنامه افق حاصل، همچنین ریسک پوشش بلادرنگ و پنجرههای بیکاری قابل پیشبینی را پیش از وقوع آشکار میکند.
معماری فنی
به دلیل اینکه تخصیص ترکیبی یک مسئله NP-hard است، سیستم از معماری دوحالته برای حفظ تأخیر پایین استفاده میکند تا تصمیمات در فاصله بین درخواستهای API گرفته شوند:
۱. حالت سریع (Fast Mode): یک تخصیصکننده مبتنی بر قواعد (Heuristic) که در ۱ تا ۱۵ میلیثانیه اجرا میشود. قوانین آن همان محدودیتهای ساختاری مدل رسمی هستند، به این معنی که هر شبکهای که تولید میکند از نظر طراحی معتبر است. این مسیر سریع برای درخواستهای ورودی است.
۲. حالت کامل (Full Mode): یک مدل رسمی که خروجی حالت سریع را به عنوان نقطه شروع برای بهینهسازیهای دورهای و عمیقتر و بازبینی به کار میبرد.
این رویکرد تمرکز را از «مشغول نگه داشتن GPU» به «به حداکثر رساندن ارزش» تغییر میدهد. این سیستم تشخیص میدهد که اگر خوشه در حال اجرای کارهای کماولویت باشد در حالی که کارهای با ارزش بالا در صف منتظرند، معیار Occupancy بیمعنی است. ساختار بر پیچیدگی غلبه کرد، زیرا انضباط عملیاتی را در ترتیب تصمیمگیریها کدگذاری کرد.
برای متخصصان، این بدان معناست که جهش بعدی در بهرهوری AI نه از خرید H100های بیشتر، بلکه از کدگذاری انضباط عملیاتی در لایه زمانبندی حاصل میشود. تخصصی کردن (کاهش نیاز هر بار کاری) و ارکستراسیون (تصمیمگیری درباره نحوه توزیع تفاوتها) دو نیمه از یک مسئله هستند و هیچکدام به تنهایی نتیجه نمیدهند.
برای مشاهده این دستاوردها در زیرساخت خود، با حسابرسی «مالیات رزرو» شروع کنید؛ محاسبه کنید چه تعداد ساعت-GPU در بلوکهای رزرو شده در ساعات کمترافیک بیکار میمانند.
گام بعدی شما
- «مالیات رزرو» خود را حساب کنید: بررسی کنید چند ساعت GPU در بلوکهای رزرو شده در ساعات کمترافیک بیکار میمانند.
- مدلهای زمانبندی را از FIFO به مدلهای آگاه از اولویت و منحنی تقاضا تغییر دهید.
- تفاوت بین معیارهای Occupancy و Value را در داشبوردهای نظارتی خود تعریف کنید.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما درباره تراشههای Blackwell مراجعه کنید.




گفتگو