YouMind
Увійти

Посібник із NVIDIA DGX Spark

@exolabs
АНГЛІЙСЬКА25 вер. 2026 р.
160K
560
80
26
1.2K

Коротко

Комплексний посібник із розгортання пристроїв NVIDIA DGX Spark для локального виведення ШІ, що охоплює об'єднання обладнання, вибір моделей, квантування та аналіз вартості.

Автор: @0xSero

Рецензенти: @alexocheema та @alexzfunk

Окрема подяка: @MiaAI_lab

Якщо ви замислюєтесь над локальним інференсом, ви неодмінно дізнаєтесь про цей цікавий «золотий злиток». Це машина, створена для локальної роботи зі ШІ: компактна, акуратна, тиха й відносно недорога (сторінка NVIDIA DGX Spark).

Коли я вперше почув про DGX Spark, мені він не сподобався. Попри 128 ГБ пам'яті, пропускна здатність у 273 ГБ/с здавалася занизькою. Для порівняння: RTX 5090 має приблизно в 6,5 раза більшу пропускну здатність (1792 ГБ/с), хоча обсяг VRAM становить лише 32 ГБ.

EXO Labs - inline image

На момент виходу Spark такі підходи до інженерії інференсу, як спекулятивне декодування, ще не були настільки поширені, а більшість малих моделей не вирізнялися особливими можливостями.

Але індустрія ШІ розвивається, і інтелект стискається у дедалі менші обсяги, що дозволяє використовувати ці маленькі коробочки на повну.

  1. Попит на інженерію інференсу зростає.
  2. LLM стають компетентнішими в інженерії інференсу.
  3. Високоякісний інференс покращує роботу системи.

Тепер DGX Spark здатний запускати дуже розумні моделі зі швидкістю на рівні хмарних сервісів, і все це — не виходячи з дому чи офісу. Існує безліч ШІ-програм, які допоможуть вам писати код, подавати податкові декларації, навчатися або просто розважатися.

Під швидкістю я маю на увазі кількість токенів на секунду, яку бачить одна людина. Хмарне обладнання значно швидше, але провайдери ділять його між багатьма користувачами й оптимізують вартість за токен, тому кожному дістається менше. Вдома ж коробка належить лише вам, і вся її потужність — ваша. Детальніше про це — у розширених примітках.

Spark створені для об'єднання

DGX Spark споживають дуже мало енергії. Зазвичай вони працюють на рівні близько 95 Вт із завантаженою моделлю, що обслуговує запити.

Завдяки цьому їм не потрібне потужне охолодження, і вони значно тихіші за дискретні GPU. Ви можете без жодних побоювань підключити від 2 до 4 таких пристроїв до стандартної американської електромережі. Саме в цьому суть, а не в абсолютній ефективності: на одиницю швидкості пам'яті серверний B300 виконує приблизно вдвічі більше роботи на джоуль (див. розширені примітки). А Spark просто вмикається у звичайну розетку.

Кожен Spark має мережеву карту ConnectX-7 із двома портами QSFP пропускною здатністю 200 Гбіт/с, або 25 ГБ/с. Це дозволяє з'єднувати Spark між собою, щоб збільшити обсяг пам'яті та її ефективну пропускну здатність.

EXO Labs - inline image

Як з'єднуються DGX Spark

За тензорного паралелізму кожна матриця ваг розподіляється між пристроями Spark, і кожен із них одночасно з іншими зчитує лише свою частину зі своєї пам'яті. Тому швидкість читання додається (власний тест масштабування NVIDIA):

  • 546 ГБ/с для двох Spark
  • 819 ГБ/с для трьох
  • 1092 ГБ/с для чотирьох

Масштабування майже лінійне. У тесті NVIDIA швидкість запису зросла вдвічі на двох Spark і в 3,7 раза на чотирьох (таблиця 3). Це працює настільки добре, тому що канал ConnectX-7 має дуже низьку затримку, а CUDA може переміщувати дані між Spark безпосередньо з коду GPU (детальніше про причини).

Пам'ять додається так само: по 128 ГБ на кожен, 512 ГБ на чотири, з яких приблизно 120 ГБ на кожен Spark реально доступні для ШІ-завдань.

Можливість об'єднувати Spark нівелює їхній головний недолік — нижчу пропускну здатність пам'яті. А низьке енергоспоживання від звичайної розетки робить цю систему неймовірною для одного користувача чи невеликого домогосподарства.

EXO Labs - inline image

З'єднані DGX Spark у реальності

Dense проти MoE

Наразі існують дві основні архітектури моделей: розріджені (sparse) та щільні (dense). Моделі типу Mixture-of-Experts, як-от Qwen3.6-35B, активують лише 3 млрд параметрів на кожен згенерований токен — у 9 разів менше, ніж Qwen3.8-27B.

Це робить розріджені LLM особливо придатними для DGX Spark. Вони чудово поєднуються з нижчою пропускною здатністю пам'яті, забезпечуючи користувачам високу швидкість попри загальний розмір моделі.

MoE корисна не лише для DGX Spark. У дата-центрах це також краща архітектура. Для локального використання змінився поріг: ми очікуємо певної швидкості, а щільні моделі, достатньо розумні для цього, були завеликими, щоб працювати так швидко вдома. Моделі MoE подолали цю межу, тому тепер вони одночасно корисні та швидкі на локальному обладнанні. Щільні моделі, можливо, теж колись досягнуть цього рівня.

EXO Labs - inline image

Щільні LLM проти MoE

Спекулятивне декодування

Будь-яка LLM із MTP, DSpark або DFlash підійде краще, оскільки чернеткові моделі зазвичай крихітні й не потребують багато обчислень для генерації правильного токена.

Це суттєво підвищує пропускну здатність Spark ціною 1–2 ГБ пам'яті, якої в них удосталь.

Як і MoE, спекулятивне декодування допомагає скрізь, а не лише вдома. Але саме їхня комбінація дозволила локальному ШІ подолати критичний поріг. Раніше найкращі відкриті моделі працювали болісно повільно на домашньому обладнанні.

EXO Labs - inline image

Як спекулятивне декодування підвищує пропускну здатність

Багато агентів одночасно

Один Spark може одночасно обробляти вісім і більше запитів, кожен із яких працюватиме на швидкості звичайної розмови. Наприклад, Qwen3.6-35B, яка здатна писати базовий код, керувати комп'ютером і браузером, редагувати відео та зображення, а також надавати загальну підтримку, може обслуговувати до 8 одночасних сесій, кожна зі швидкістю близько 40 токенів/с.

Для порівняння: у підписці ChatGPT Pro GPT-6-Astra працює із середньою швидкістю 37 токенів/с.

EXO Labs - inline image

Середня швидкість Astra

Це працює тому, що Spark має великий запас обчислювальної потужності відносно швидкості пам'яті. Обслуговування восьми людей означає, що модель зчитується один раз на крок, але математичних операцій виконується увосьмеро більше, а потужності для цього вистачає з головою. У 16-бітному режимі вона видає близько 100 TFLOPS при 273 ГБ/с — це приблизно 370 операцій на кожен прочитаний байт пам'яті. M3 Ultra має близько 26 TFLOPS при 819 ГБ/с, тобто приблизно 32 (дані EXO). Це приблизно в 11 разів більше обчислень на байт, і це без урахування 4-бітного апаратного забезпечення Spark, якого Mac просто не мають.

Реальна робота

Qwen3.6-35B на одному Spark створила відео, яке за день набрало понад 80 000 переглядів. Процес зайняв лише 3 хвилини: модель взяла папку з 3 відео, зшила їх разом і прискорила результат у 4 рази, залишивши частоту кадрів нижчою за ліміт X.

https://x.com/0xSero/status/2072206209323802746

Вартість

Спочатку рекомендована ціна DGX Spark становила $3999, але потім її підняли до $4699. У 2026 році ціни зросли на все обладнання.

Реальна ціна ще вища. Власний магазин NVIDIA розпродав усі запаси. Найдешевший варіант, який мені вдалося знайти, коштує близько $5000, вживані продаються за $6000, а 21 вересня я бачив, як сайт NVIDIA просив $7999 за ту саму коробку, за яку я заплатив $4699 п'ятьма тижнями раніше.

EXO Labs - inline image

Ціни на GX10

Маркетплейс NVIDIA станом на 21 вересня. Публікація

EXO Labs - inline image

$4000 – $4700

Поради щодо покупки

  • Підійде будь-який пристрій на GB10. ASUS, Dell, MSI та інші продають власні версії того самого чипа. Вони працюють з тим самим програмним забезпеченням і тими самими рецептами. Перевірте обсяг SSD: 1 ТБ закінчується дуже швидко, якщо ви тримаєте кілька великих моделей. Я б брав 4 ТБ.
  • Купуйте кабель разом із другим Spark, він потрібен, щоб з'єднати їх між собою.
  • Деякі OEM-виробники пропонують Spark із кращим повітряним потоком

Живлення, шум і ваші рахунки за світло

Шум і тепло від дискретних GPU — це не жарти: з чотирма 3090 ви легко споживатимете 1600–2000 Вт, маючи вп'ятеро менше пам'яті. Мені довелося винести системний блок із RTX Pro 6000 з кабінету, бо він регулярно нагрівав кімнату до 35 °C.

Звичайна домашня електромережа в США може безпечно витримувати близько 1440 Вт цілодобово (електротехнічні норми США). Більша потужність потребує нової лінії, а отже — виклику електрика.

  • Один Spark із запущеною моделлю споживає близько 90–200 Вт (ServeTheHome). Це приблизно $12 на місяць, якщо залишати його увімкненим цілодобово.
  • Чотири Spark споживають разом близько 500 Вт, плюс комутатор на 240 Вт. Приблизно $66–100 на місяць, і все це поміститься в одну розетку.
  • Моя система з чотирма GPU споживає до 1600 Вт. Це більше, ніж витримує одна лінія, і близько $300 на місяць.
EXO Labs - inline image

Звідки ці цифри. Кожне значення — це різний тип вимірювання, тому ось вони поруч для порівняння. Місячна вартість розрахована за умови, що машина працює з таким споживанням 24 години на добу за тарифу 18 центів за кВт·год:

EXO Labs - inline image

Мої тести

Чому чотири Spark споживають більше, ніж 4 × 90 Вт. Показник 90 Вт — це один Spark, який самостійно обслуговує модель. Коли одна велика модель розподілена між чотирма пристроями, кожен із них працює над кожним словом і постійно використовує мережевий канал, тому споживання зростає — у моїх тестах у середньому до 125 Вт. Отже, $12 і $66 на місяць — це вартість безперервної роботи на повну потужність. Реальне використання з періодами простою обійдеться дешевше.

Електроенергія теж не дешевшає. Ціни для домогосподарств у США зросли приблизно на 5% цього року, до 18 центів за кВт·год, частково через нові дата-центри. У серпні мій особистий рахунок подвоївся до $1000 на місяць — працювали система з GPU, два Spark і чотири кондиціонери.

EXO Labs - inline image

Звук DGX Spark

А що щодо шуму? Моя система з GPU гуде як реактивний двигун. Ось найгучніше, на що здатні мої чотири Spark:

Кілька практичних порад:

  • Використовуйте їх з будь-якими ШІ-моделями, моделями світу, генераторами зображень тощо.
  • Ставте їх на бік. Так мої працюють холодніше, бо навколо сіточки є простір.
  • Долучайтеся до спільнот у Discord/Reddit/X, щоб отримати допомогу з налагодженням
  • Налаштуйте Tailscale для всього свого парку пристроїв
EXO Labs - inline image

Шість моделей, які я реально використовую

Я перепробував десятки. Ось шість, до яких повертаюся постійно.

EXO Labs - inline image

Токен — це приблизно три чверті слова, і все, що перевищує 30, сприймається як звичайна розмова.

Чому кожна цифра прив'язана до конкретного завдання. Більшість цих рецептів використовують спекулятивне декодування, коли невелика допоміжна модель «вгадує» текст наперед. Код і JSON вгадувати легко, художній текст — ні, тому одна й та сама модель на одному й тому самому пристрої може працювати вдвічі швидше на одному завданні порівняно з іншим. Довгі промпти також уповільнюють процес. Тому кожна швидкість тут вказує, що саме генерувалося і якої довжини був промпт:

Правильний спосіб виміряти це для багатьох завдань — SPEED-Bench від NVIDIA, який тестує спекулятивне декодування на реальних промптах з 11 категорій і вхідними даними від 1 тис. до 32 тис. токенів. Я ще не запускав його на Spark.

EXO Labs - inline image

Qwen3.8-Flash-Next на двох Spark створює анімації та невелику гру. (21 вересня) Публікація

Де їх взяти. Кожна модель має офіційну сторінку, а в розділі 6 є перевірений рецепт для Spark для кожної з них:

Як взагалі поміщаються такі великі моделі

Відповідь — квантування. Квантування стискає ваги моделі, і цей процес відбувається з втратами: кожна вага зберігається з меншою кількістю бітів (скажімо, 4 замість 16), тому модель зменшується до чверті початкового розміру, але частина деталей втрачається. Мета полягає в тому, щоб максимально наблизитися до поведінки оригінальної моделі під час стиснення ваг.

Що сильніше стиснення, то гірша якість. Turboderp виміряв це для Qwen3.8-27B. Кожна точка — це одна стиснена версія. Чим лівіше, тим менший розмір; чим нижче, тим ближче до оригіналу:

EXO Labs - inline image

Середня KL-дивергенція відносно розміру на диску для стиснених версій Qwen3.6-35B-A3B від різних постачальників. Логарифмічна шкала. Графік: https://huggingface.co/turboderp/Qwen3.8-27B-exl3

Для Spark важливі два формати:

  • NVFP4 — 4-бітний формат NVIDIA, який чип Spark зчитує напряму. Qwen3.6-35B зменшується з 72 ГБ до 24 ГБ і поміщається на одному Spark із запасом.
  • EXL3 дозволяє точно обрати кількість бітів. GLM-5.3-Flash у 4 бітах займає 176 ГБ і поміщається на двох Spark. У 2 бітах — 85 ГБ, що вміщується на одному, хоча модель стає трохи менш «чіткою».
EXO Labs - inline image

Порада:

4 біти — ідеальний варіант для менших моделей, 3 біти — для більших

Як зрозуміти, чи стиснена модель досі хороша. Якісні картки моделей показують, наскільки зменшена версія відповідає оригіналу. Шукайте два показники:

  • Top-1 agreement (збіг Top-1): як часто мала модель обирає те саме наступне слово, що й оригінал. Чим більше, тим краще. Мій GLM-5.3-Flash для одного Spark збігається приблизно у 80% випадків.
  • KL-дивергенція: наскільки прогнози моделі відхиляються від оригіналу. Чим менше, тим краще. Мій необрізаний GLM-5.3 у 3 бітах має показник 0,089. Обрізана версія на 197 ГБ — 0,511. Така ціна розміщення на меншій кількості Spark.

6. Від одного Spark до чотирьох: покроковий шлях

Про це мене питають найчастіше. Рухайтеся крок за кроком. Кожен етап працює самостійно, тому зупиняйтеся там, де вас усе влаштовує.

EXO Labs - inline image

Більшість наведених нижче рецептів походять від MiaAI Lab — команди, яка пакує найкращі конфігурації для Spark у репозиторії, які можна клонувати та запустити одним скриптом. Кілька — мої власні. У кожному зазначено, на чому його тестували та з якою швидкістю він працював.

Зробіть це один раз на кожному Spark:

  1. Оновіть його. Запустіть оновлення в DGX Dashboard, потім перезавантажте.
  2. Отримайте доступ зі свого ноутбука. Використовуйте NVIDIA Sync або звичайний SSH. Щоб підключатися з-за меж дому, NVIDIA має плейбук для Tailscale.
  3. Створіть обліковий запис і токен Hugging Face. Більшість рецептів завантажують моделі через нього. Зберігайте його у файлі .env, а не в репозиторії.
  4. Перевірте диск. Моделі великі. Рецепту для одного Spark потрібно від 25 до 130 ГБ вільного місця. Рецепту DeepSeek для чотирьох Spark потрібно близько 476 ГБ на першому пристрої.
  5. Docker уже встановлено. DGX OS постачається з ним, і майже кожен рецепт працює всередині нього, тому вам не доведеться встановлювати пакети Python вручну.

Крок 1: один Spark

Почніть із LM Studio. Скористайтеся покроковою інструкцією від NVIDIA, завантажте Qwen3.6-35B і починайте спілкуватися. Це займе близько години. Так ви переконаєтесь, що пристрій працює, перш ніж братися за складніші речі.

Потім переходьте до рецептів. Рецепти використовують vLLM або SGLang, які швидші за LM Studio і можуть обслуговувати багато агентів одночасно. Оберіть один:

  1. Qwen3.6-35B (4-бітний NVFP4) MiaAI Lab 95 токенів/с для одного користувача, загалом 317 для восьми ~50 ГБ
  2. Qwen3.8-27B (4-бітний NVFP4) MiaAI Lab ~51 токен/с на коді з помічником DSpark, ~23 у чаті ~24 ГБ
  3. Qwen3.8-Flash-Next (4-бітний NVFP4) MiaAI Lab 48,7 токена/с для одного користувача, загалом 162,9 для восьми ~130 ГБ
  4. GLM-5.3-Flash (2-бітний EXL3) мій рецепт або версія рецепту Mia для одного Spark від 10 до 25 токенів/с, контекст 262K, підтримка зору ~85 ГБ

Перший — найпростіший. Усього три рядки:

bash
1git clone <https://github.com/MiaAI-Lab/Unsloth-Qwen3.6-35b-NVFP4-DGX-Spark.git>
2cd Unsloth-Qwen3.6-35b-NVFP4-DGX-Spark
3./start.sh

Коли все запуститься, ви отримаєте адресу у стилі OpenAI на своєму Spark. Спрямуйте на неї Pi, opencode, Open WebUI або будь-який інший інструмент, яким користуєтесь.

Порада:

якщо модель не запускається, причина майже завжди в пам'яті. Спершу закрийте інші моделі. Один Spark запускає одну велику модель за раз.

Крок 2: два Spark

Це конфігурація, яку я рекомендую найчастіше. Як я сказав у серпні: "2 DGX Sparks — і ви в дамках."

EXO Labs - inline image

2 dgx sparks

Кабель. Вам потрібен один короткий кабель QSFP між двома портами QSFP. Підійде будь-який із цих (гід по кабелях):

  • Оригінальний від NVIDIA: QSFP Cable 0.4 m for DGX Spark, $99,99. Часто немає в наявності.
  • Ті, що згадуються в документації NVIDIA: Amphenol NJAAKK-N911 або Luxshare LMTQF022-SD-R, 0,5 м, приблизно від $159 до $187.
  • Дешевший варіант на 200G: NVIDIA MCP1650-V00AE30, близько $84.

Незалежно від вашого вибору, канал працюватиме на швидкості 200 Гбіт/с. Не використовуйте для цього USB-C або порт 10 GbE. Вони занадто повільні.

Налаштуйте з'єднання. Скористайтеся плейбуком NVIDIA для з'єднання двох Spark. Він призначить адресу кожному порту та перевірить швидкість. Потім налаштуйте SSH без пароля від першого Spark («головного») до другого («робочого»). Це потрібно для кожного рецепту на два Spark.

Раджу попросити claude або gpt налаштувати це за вас — так буде простіше.

Оберіть рецепт:

  1. Qwen3.8-Flash-Next (4-бітний NVFP4) MiaAI Lab 52,1 токена/с для одного користувача з MTP, контекст до 1M
  2. GLM-5.3-Flash (4-бітний EXL3) MiaAI Lab 62,9 токена/с для одного користувача, загалом 146,5 для чотирьох, контекст 850K
  3. DeepSeek-V4.1-Flash (2,9-бітний EXL3) MiaAI Lab від 38,8 до 43,0 токенів/с на коді, контекст 600K
  4. GLM-5.3 (3-бітний EXL3, обрізаний до 197 ГБ) моя картка моделі поміщається; швидкість ще не виміряна

Більшість рецептів для двох Spark виглядають однаково: скопіюйте приклад налаштувань, вкажіть адреси обох пристроїв, завантажте, запустіть. Ось приклад для GLM-5.3-Flash:

bash
1cp .env.example .env # set HEAD_IP and WORKER_IP
2./download.sh
3./start.sh

Увага:

з'єднання Spark працює, але саме тут програмне забезпечення найменш відшліфоване. Дотримуйтесь перевіреного рецепту і виділіть на це пів дня, якщо робите вперше.

Крок 3: три Spark

Для трьох Spark комутатор не потрібен. Кожен Spark має два порти QSFP, тому ви з'єднуєте їх трикутником: A з B, B з C, C з A. Це три кабелі. NVIDIA підтримує це як кільце без комутатора.

Три Spark дають вам близько 384 ГБ. Цього достатньо для завдань, які не вміщуються на двох:

  • DeepSeek-V4.1-Flash у рідній точності. Рецепт від MiaAI Lab запускає її на трикутнику з трьох Spark зі швидкістю 51,0 токен/с для одного користувача та контекстом 256K. Там є команда doctor, яка перед запуском перевіряє SSH, Docker і мережеві з'єднання.
  • GLM-5.3-Flash із більшим запасом місця. Рецепт EXL3 для двох Spark має файл start-tp3.sh для трьох.
  • GLM-5.3 без обрізання. Моїй збірці на 293 ГБ потрібно пам'яті приблизно на три Spark.

Рецепт DeepSeek — гарний приклад того, як працюють більші конфігурації. Тут кілька кроків, а не один:

bash
1./start.sh doctor # checks ssh, docker, links, disk
2./start.sh share # shares the model folder with the other Sparks
3./start.sh serve # starts the workers, then the head

Порада:

деякі моделі діляться порівну лише на 2 або 4. Переконайтеся, що в рецепті вказано "3x", перш ніж купувати третій Spark.

Крок 4: чотири Spark

Чотири Spark дають вам близько 512 ГБ. Є два способи їх з'єднати.

Варіант A: комутатор (те, що використовую я). Кожен Spark підключається одним кабелем до комутатора 200 GbE, тому всі пристрої знаходяться на відстані одного стрибка один від одного. NVIDIA має плейбук для цього. Які комутатори використовують люди:

Як я казав у вересні: "Не думаю, що на ринку є краща пропозиція, ніж 4 Spark із комутатором MikroTik."

EXO Labs - inline image

Варіант B: без комутатора. З'єднайте чотири пристрої кільцем, підключивши кожен Spark до двох сусідніх. Несусідні Spark спілкуються через проміжний. Це економить гроші на комутаторі, але налаштувати складніше:

  • SparkRing — це повний програмний стек для з'єднання пар без комутатора та кілець із чотирьох Spark. Це альфа-версія, тому фіксуйте конкретну версію.
  • Цей рецепт для GLM-5.3-Flash працює на кільці з чотирьох Spark із чотирма короткими кабелями 100G і пропатченим NCCL. Зазвичай видає близько 45 tok/s, а після прогріву — до 100 tok/s.

Оберіть рецепт:

  • DeepSeek-V4.1-Flash (нативний) MiaAI Lab, start-tp4.sh: 45,4 tok/s для одного користувача, загалом 134,2 tok/s для шістнадцяти, контекст 1M
  • GLM-5.3-Flash (4-бітний NVFP4) кільце без комутатора: ~45 tok/s зазвичай, ~100 tok/s після прогріву

Мої найкращі результати на чотирьох пристроях: 118 tok/s для GLM-5.3-Flash із помічником DFlash2 та від 83,8 до 95,3 tok/s для DeepSeek-V4.1-Flash на коротких промптах (пост).

EXO Labs - inline image

Інструменти, які допоможуть на кожному кроці

  • \\sparkDash:\\ веб-дашборд для всіх ваших Spark в одному вікні. GPU, пам'ять, мережа та токени на секунду в реальному часі. Кілька показників швидкості в цьому посібнику я вимірював саме ним.
  • \\Плейбуки NVIDIA для Spark:\\ офіційні інструкції для LM Studio, Ollama, vLLM, об'єднання Spark тощо.
  • \\local-ai-registry:\\ мої рецепти та всі проведені мною тести швидкості.
  • \\b12x:\\ швидкі математичні обчислення, на яких тримаються багато рецептів для Spark. Встановлювати його вручну не потрібно — це роблять самі рецепти. Дивіться розширені примітки нижче.
EXO Labs - inline image

Висновок

Spark — це коробка з пам'яттю. Він вміщує великі моделі, тихо працює на них від звичайної домашньої розетки й стає кращим щоразу, коли ви додаєте ще один пристрій.

Якщо ви починаєте сьогодні:

  1. Купіть один і запустіть Qwen3.6-35B через LM Studio вже першого дня.
  2. Переходьте на рецепт, коли вам знадобиться швидкість або багато агентів.
  3. Купіть другий Spark і кабель, коли захочете GLM-5.3-Flash чи DeepSeek-V4.1-Flash. Для більшості людей на цьому варто зупинитися.
  4. Збільшуйте кількість до трьох або чотирьох лише якщо вам потрібні найбільші моделі або ви хочете запускати кілька одночасно.

Чи купив би я їх знову? Так. І якби починав усе спочатку, то взяв би два вже першого дня.

Поглиблено: як масштабується об'єднання Spark

Вам це не потрібно, щоб просто користуватися Spark. Цей розділ для тих, хто хоче зрозуміти, чому цифри виглядають саме так.

Майже лінійне масштабування для генерації тексту

Кожне слово, яке генерує модель, означає зчитування її активних ваг із пам'яті. Якщо розподілити модель між кількома Spark, кожен із них одночасно читає свою частку, тому швидкості зчитування додаються.

NVIDIA це виміряла. При переході від одного до двох, а потім до чотирьох Spark час на генерацію кожного слова скоротився з 269 мс до 133 мс і далі до 72 мс. Це прискорення у 2,0 раза для двох пристроїв та у 3,7 раза для чотирьох (блог NVIDIA, таблиця 3).

EXO Labs - inline image

Показники настільки близькі до лінійних, бо з'єднання ConnectX-7 має дуже низьку затримку, а обмін даними між Spark може відбуватися безпосередньо в коді GPU. Це пояснення для Mac розкриває ту саму ідею детальніше.

Після кожного шару Spark обмінюються проміжними результатами, перш ніж почнеться наступний шар. Обсяг даних невеликий, але це відбувається для кожного шару й кожного слова. Кожен обмін забирає трохи часу, і ця затримка не зменшується при додаванні нових Spark.

  • Швидкість каналу — 200 Гбіт/с, приблизно 25 ГБ/с. Це десята частина швидкості власної пам'яті Spark. І цього достатньо, бо обсяги обміну малі.
  • Використовується RDMA. Дані йдуть напряму з пам'яті одного Spark у пам'ять іншого без копіювання процесором. Кожен порт QSFP визначається як дві половини по 100 Гбіт/с, і програмне забезпечення має використовувати обидві, щоб отримати повні 200 (деталі). За це відповідає NCCL — бібліотека NVIDIA.
  • Читання масштабується гірше, ніж запис. У тому ж тесті NVIDIA читання промпту на 32K токенів прискорилося у 1,6 раза на двох Spark та у 2,1 раза на чотирьох. Читання передає значно більше даних між пристроями на кожному кроці.
  • Кільця додають «хопи». У трикутнику з трьох Spark кожен пристрій з'єднаний кабелем з обома іншими. У кільці з чотирьох деякі пари спілкуються через сусіда. Комутатор робить усіх сусідами на відстані одного хопа. SparkRing використовує власний код для обміну (SIRCL), щоб прискорити роботу кілець.
  • Моделі Mixture-of-Experts додають другий рівень розподілу. Рецепти часто поєднують тензорний паралелізм із «паралелізмом експертів», коли різні Spark зберігають різних експертів.

Ще два способи прискорити роботу

  • Багато користувачів одночасно. Spark зчитує модель один раз на крок і відповідає всім із цього єдиного зчитування. Тому загальна швидкість зростає набагато стрімкіше, ніж швидкість для одного користувача.
  • Спекулятивна декодувальна модель, яка вгадує текст наперед. MTP, DSpark та DFlash2 працюють саме так. Невелика швидка допоміжна модель генерує чернетку з кількох слів, а велика перевіряє їх усі за одне зчитування. Коли здогадки правильні, ви отримуєте кілька слів за ціною одного. Саме так GLM-5.3-Flash пришвидшується з 27 tok/s на звичайному тексті до 65 tok/s на структурованому виведенні в тому самому рецепті.
EXO Labs - inline image

Qwen3.6-35B-A3B у 4 біти на одному Spark із увімкненим помічником для прискорення. Джерело: тест швидкості local-ai-registry, серпень 2026 року.

Хмарний ШІ та локальний ШІ — різні речі

Хмарний GPU значно швидший за Spark. Але хмарні провайдери ділять кожен GPU між багатьма користувачами й обирають певний баланс між вартістю токена та швидкістю для окремої людини. Більшість обирає економію, тому кожен користувач отримує менше токенів на секунду, ніж залізо могло б дати одній людині. InferenceX наочно демонструє цей компроміс для Qwen3.8-Flash-Next.

Вдома такого компромісу немає. Пристрій ваш, тому ви можете спрямувати всю його потужність на одну задачу. Ось чому Spark може здаватися таким же швидким, як хмарний сервіс, хоча апаратно він йому поступається.

sm_121: чому софт для Spark — це окремий світ

Кожен GPU NVIDIA має номер «обчислювальної здатності» (compute capability), який підказує програмному забезпеченню, які інструкції доступні. GPU у Spark — це 12.1, або sm_121 (перший огляд від Simon Willison). RTX 5090 та RTX PRO 6000 мають sm_120 — дуже близького родича. Дата-центрові чипи NVIDIA, B200 і B300, — це sm_100 та sm_103, зовсім інша сім'я.

Це важливо, бо найшвидший ШІ-код пишеться під конкретну архітектуру. Коли Spark тільки вийшов, багато програм або взагалі не запускалися, або працювали повільно (форум NVIDIA, issue у vLLM).

Проблему вирішили люди, які написали код спеціально для Spark:

  • b12x від Local Inference Lab — бібліотека ядер для sm_120 та sm_121: DGX Spark, RTX Spark, RTX 5090 і RTX PRO 6000. Вона охоплює 4-бітну матричну математику (NVFP4, MXFP4), механізм attention для моделей типу DeepSeek, шари mixture-of-experts та швидкий завантажувач моделей. Встановлюється через pip install b12x, а рецепти для vLLM вмикають її прапорцями на кшталт flashinfer_b12x. Її використовує рецепт для Qwen3.6-35B.
  • SparkInfer — стара назва b12x. Старе посилання тепер перенаправляє на b12x. Мій рецепт DeepSeek для одного Spark використовує його код attention і для читання, і для запису. Не плутайте його з sparkinfer від gittensor — окремим рантаймом для карт RTX (лише sm_120).
  • ExLlamaV3 — рушій для роботи з моделями EXL3. MiaAI Lab підтримує форк із портом під Arm (GB10) та підтримкою допоміжних моделей.
  • lil — лаунчер від Local Inference Lab. Він аналізує конфігурацію машини й формує правильну команду vLLM для одного Spark або об'єднаної групи.

Поглиблено: Spark як машина для досліджень

Цього я зовсім не очікував. Spark повільно генерує текст, але чудово його читає. А більшість дослідницької роботи з моделями — це саме читання.

Що Spark робить найкраще: prefill

Модель виконує два різні завдання:

  • Prefill — це читання вашого промпту. Весь промпт обробляється за один раз, тому обмеженням є лише чиста обчислювальна потужність. У GB10 її вдосталь: до 1 петафлопса 4-бітних обчислень.
  • Decode — це генерація відповіді, слово за словом. Кожне слово потребує повторного зчитування моделі з пам'яті, тому обмеженням стає швидкість пам'яті. І це слабке місце Spark.

Тому Spark читає промпти у 13–41 раз швидше, ніж генерує текст:

EXO Labs - inline image

DeepSeek-V4.1-Flash на чотирьох Spark: 3360 tok/s при читанні промпту на 32K токенів, 3273 tok/s при 131K, тоді як швидкість генерації залишається в межах 70–95. (20 вересня) Пост

Чому дослідникам потрібно саме це

Майже все, що я роблю для зменшення розміру моделей, — це читання, а не запис:

  • Квантування (менше бітів). Збірки EXL3 та NVFP4 створюються шляхом пропускання тестового тексту через модель і вимірювання того, скільки інформації втрачає кожен шар при різній бітності. Це читання.
  • Прунінг (менше експертів). REAP пропускає тестовий текст через модель Mixture-of-Experts і фіксує, наскільки активно використовується кожен експерт. Найменш корисні експерти вирізаються. Моя 197-гігабайтна GLM-5.3 зберігає 168 із 256 експертів. Це теж читання.
  • Перевірка якості. Показники Top-1 agreement та KL-дивергенції отримують, пропускаючи той самий текст через оригінальну та зменшену моделі й порівнюючи їхні відповіді. Знову читання.
  • Тести довгого контексту. Перевірка того, чи здатна модель знайти один факт серед 262 000 токенів, — це переважно одне дуже довге читання.

Мій власний робочий процес змінився саме з цієї причини. "Тепер я роблю весь свій прунінг/exl3/бенчмаркінг на DGX Spark, а 6000-ті залишив для інференсу. Це повільніше, але 2-3 дні проти 12 годин — цілком нормально." Той DeepSeek для одного Spark, який подолав позначку у 100 000 завантажень, — це модель, стиснена EXL3 після прунінгу через REAP.

Як це пов'язано з дослідницькими цілями

Якщо ваша мета — дізнатися щось нове про модель, Spark підходить ідеально:

  • Він вміщує велику модель. Ви можете тестувати модель на 300B параметрів на одній-двох коробках замість оренди кластера.
  • Він працює днями від домашньої розетки. Тривалі задачі калібрування та оцінки можуть виконуватися без нагляду й без величезних рахунків за електрику.
  • Він звільняє ваше швидке залізо. Мої GPU обслуговують користувачів, поки Spark виконують повільну, копітку роботу.
  • Ви можете калібрувати на власних даних. Я робив прунінг моделей на власних сесіях агентів і текстах — це приватна інформація, яка нікуди не йде з мого стола.
  • Це чудова платформа для дослідницьких агентів. Я одночасно запускав на Spark чотирьох агентів, які працювали над дослідницькими задачами, кожен зі швидкістю близько 120 tok/s.
  • Навчання добре масштабується між Spark. У тесті NVIDIA файн-тюнінг працював удвічі швидше на двох Spark і вчетверо швидше на чотирьох, бо пристрої синхронізуються лише раз на крок (таблиця 5). Плейбуки від NVIDIA містять інструкції з файн-тюнінгу через PyTorch. Сам я час навчання не заміряв.

Поглиблено: GB10, GB300 та Spark як додаткова пам'ять

«GB» означає Grace Blackwell: Arm-процесор і GPU Blackwell в одному корпусі, які ділять пам'ять через швидкий канал NVLink-C2C. GB10 у Spark — найменша версія цієї концепції, з 20-ядерним Arm-процесором, розробленим разом із MediaTek.

GB300 — версія для дата-центрів: процесор Grace із GPU Blackwell Ultra (B300). Він встановлюється у стійки NVIDIA GB300 NVL72, а один GB300 є основою DGX Station. GB10 — це не шматок, вирізаний із GB300. Це той самий дизайн, просто зменшений, тому однакове програмне забезпечення працює на обох.

EXO Labs - inline image

Висновок

DGX Spark виборов собі місце в моєму домі, і його підтримка, корисність та можливості зростають щодня.

Джерела та додаткові матеріали

Збереження в один клік

Використовуйте YouMind для AI-глибокого читання віральних статей

Зберігайте джерела, ставте цілеспрямовані запитання, підсумовуйте аргументи та перетворюйте віральні статті на корисні нотатки в одному AI-робочому просторі.

Дослідити YouMind
Для авторів

Перетворіть свій Markdown на охайну статтю для 𝕏

Коли ви публікуєте власні лонгріди, зображення, таблиці та блоки коду роблять форматування в 𝕏 складним. YouMind перетворює повну чернетку в Markdown на чисту статтю для 𝕏, готову до публікації.

Спробувати Markdown для 𝕏

Більше патернів для аналізу

Останні віральні статті

Переглянути більше віральних статей