دو تا DGX Spark کنار هم با vLLM؛ اجرای مدلهایی که تو یکی جا نمیشن
خلاصهٔ کاملتر
مقاله نشون میده چطوری میشه دو تا NVIDIA DGX Spark رو طوری به هم وصل کرد که مثل یه سیستم بزرگتر کار کنن. هر Spark حدود ۱۲۸ گیگ حافظه داره. مدلی مثل DeepSeek V4 Flash حتی بعد از quantize شدن تا حدود ۴ بیت، ۱۵۰ تا ۱۶۰ گیگ جا میخواد و رو یه Spark اصلاً لود نمیشه. نسخه بزرگتر Qwen3-Next هم همین وضع رو داره.
اتصال با یه کابل RoCE دویست گیگی انجام میشه. RoCE یعنی RDMA روی اترنت، و RDMA هم یعنی هر دستگاه بتونه مستقیم تو حافظه اون یکی بنویسه، بدون اینکه داده از CPU رد بشه. تو عمل سرعت کابل حدود ۱۱۱ گیگ بر ثانیه اندازهگیری شد نه ۲۰۰، ولی باز هم تو بیشتر تستها گلوگاه اصلی نبود.
موتور اجرا vLLM هست و روش تقسیم مدل tensor parallelism، یعنی هر لایه مدل نصف میشه و هر نصفش رو یه Spark حساب میکنه. برای هر توکن، دو دستگاه بعد از هر لایه نتیجههاشون رو با هم عوض میکنن. پس هزاران رفتوبرگشت کوچیک داریم و برای همینه که تأخیر کم RDMA مهمه. آخرش هر Spark کمی بیشتر از ۱۰۰ گیگ از حافظهش رو پر میکنه و جا برای context میمونه.
تو مقایسه با یه Mac Studio M5 Ultra با ۲۵۶ گیگ حافظه، سرعت تولید توکن نزدیک بود: DeepSeek رو هر دو حدود ۳۸ توکن بر ثانیه. رو Qwen، Mac با ۴۵ در برابر ۳۸ جلو زد. دلیلش پهنای باند حافظهست (۱.۲ ترابایت بر ثانیه در برابر ۲۷۳ گیگ برای هر Spark)، چون تولید توکن به سرعت خوندن وزنها از حافظه بستگی داره.
ولی تو پردازش پرامپت (prefill، یعنی خوندن ورودی قبل از شروع جواب) که بیشتر به قدرت محاسباتی GPU وابستهست، Sparkها خیلی جلوترن. با یه کدبیس پایتون ۱۴ فایلی و ۳۲ هزار توکن، Sparkها تو ۱۷ ثانیه تموم کردن و Mac حدود ۵۰ ثانیه. تو ۱۲۸ هزار توکن، Sparkها حدود ۷۲ ثانیه طول کشیدن. با چند کاربر همزمان هم throughput کل Mac حدود چهار کاربر به اوج رسید و بعد افت کرد، ولی خوشه Spark همچنان بالا رفت.
نویسنده میگه انتخاب بستگی به نوع کار داره. اگه پرامپتهای طولانی، کدبیس بزرگ یا چند کاربر داری، Sparkها بهترن. اگه بیشتر پرامپت کوتاه و جواب طولانی داری، Mac همپاشه. cache کردن context هم فاصله رو کم میکنه: با ۱۶ هزار توکن cache شده، جواب بعدی رو Mac حدود ۳ ثانیه و رو Sparkها ۱.۴ ثانیه طول کشید. هزینه هم تقریباً یکیه، هر Spark نزدیک ۵ هزار دلار.
نکات کلیدی:
- هر DGX Spark حدود ۱۲۸ گیگ حافظه داره و DeepSeek V4 Flash حدود ۱۵۰ تا ۱۶۰ گیگ میخواد.
- کابل RoCE دویست گیگی تو عمل حدود ۱۱۱ گیگ بر ثانیه سرعت داد.
- سرعت تولید توکن روی DeepSeek: حدود ۳۸ توکن بر ثانیه هم روی Sparkها هم روی Mac Studio.
- پردازش پرامپت ۳۲ هزار توکنی: ۱۷ ثانیه روی Sparkها در برابر حدود ۵۰ ثانیه روی Mac.
- عوض کردن موتور از llama.cpp به MLX روی Mac سرعت DeepSeek رو حدود ۳۴٪ بیشتر کرد.




