YouMind
登入

DGX Spark 使用手冊

@exolabs
英語2026年9月25日
160K
560
80
26
1.2K

TL;DR

一份關於部署 NVIDIA DGX Spark 單元以進行本地 AI 推論的完整手冊,涵蓋硬體串接、模型選擇、量化技術與成本分析。

作者:@0xSero

審稿人:@alexocheema 與 @alexzfunk

特別感謝:@MiaAI_lab

如果你正考慮在本機跑推論,肯定會注意到這塊「金磚」。它是一台專為本機 AI 服務打造的機器,設計得小巧、乾淨、安靜,而且相對便宜(NVIDIA 的 DGX Spark 頁面)。

我第一次聽到 DGX Spark 時,其實不太感興趣。 儘管它有 128 GB 記憶體,但 273 GB/s 的記憶體頻寬 看起來實在太低。作為參考,一張 RTX 5090 雖然只有 32 GB VRAM,頻寬卻高達約 6.5 倍(1,792 GB/s)。

EXO Labs - inline image

Spark 剛推出時,像 speculative decoding(推測解碼) 這類推論工程技巧還沒那麼普及,多數小模型的能力也還差一截。

隨著 AI 產業不斷進步,智慧正被壓縮進越來越小的體積裡,這讓這些小盒子終於能發揮全部潛力。

  1. 推論工程的需求正在成長。
  2. LLM 在推論工程上變得越來越強。
  3. 高品質推論能提升整體系統表現。

現在的 DGX Spark 已經能在速度上與雲端服務平起平坐地運行非常聰明的模型,而且一切都在你家或辦公室裡完成。市面上有大量 AI 軟體可以幫你寫程式、報稅、讀書,或者單純娛樂你。

這裡說的速度,是指一個人實際看到的每秒 token 數。雲端硬體當然快得多,但服務商會把資源分給許多使用者,並以每顆 token 的成本最佳化為目標,所以每個人分到的就少了。在家裡,整台機器都是你的,所有算力都歸你。更多細節請看進階說明。

Spark 天生就是要串接的

DGX Spark 的功耗非常低。載入模型並開始服務時,通常只落在 95 W 左右。

因此它們不需要太強的散熱,跟獨立顯卡比起來相當安靜。你可以放心地把 2 到 4 台插在美國標準電路上,完全不用擔心。重點不在絕對效率,而在於此:以單位記憶體速度來算,資料中心的 B300 每焦耳大約能做兩倍的工作(見進階說明)。而 Spark 只要插進一般牆壁插座就能用。

每台 Spark 都內建一張 ConnectX-7 網卡,附兩個 QSFP 埠,規格為 200 Gb/s,也就是 25 GB/s。這讓你能 把多台 Spark 串接起來,藉此增加記憶體與有效記憶體頻寬。

EXO Labs - inline image

DGX Spark 的串接方式

透過 tensor parallelism(張量並行),每個權重矩陣會被切分到各台 Spark 上,每台 Spark 同時只從自己的記憶體讀取自己負責的那一塊。於是讀取速度就能疊加(NVIDIA 官方的擴展測試):

  • 兩台 Spark:546 GB/s
  • 三台:819 GB/s
  • 四台:1,092 GB/s

這幾乎是線性擴展。在 NVIDIA 自己的測試中,兩台 Spark 的寫入速度快了 2 倍,四台則快了 3.7 倍(表 3)。效果之所以這麼好,是因為 ConnectX-7 連線延遲極低,而且 CUDA 可以直接在 GPU 程式碼內部於 Spark 之間搬移資料(更多原因說明)。

記憶體也是同樣的疊加方式:每台 128 GB,四台就是 512 GB,其中每台大約有 120 GB 能真正用於 AI 工作負載。

串接 Spark 的能力解決了它最大的痛點——較低的記憶體頻寬。加上只需一般插座就能供電的低功耗,對單一使用者或小家庭來說簡直完美。

EXO Labs - inline image

現實中串接起來的 DGX Spark

Dense vs MoE

目前主要有兩種模型架構:sparse(稀疏)與 dense(密集)。像 Qwen3.6-35B 這類 Mixture-of-experts(MoE)模型,每生成一個 token 只啟用 3B 參數,比 Qwen3.8-27B 少了 9 倍。

這讓 sparse LLM 特別適合 DGX Spark。它們與較低的記憶體頻寬搭配得恰到好處,即使模型總體積不小,使用者依然能獲得流暢體驗。

MoE 不只是對 DGX Spark 好用,在資料中心裡它也是更優秀的架構。本機端改變的是一道門檻:我們對速度有一定期待,而過去那些夠聰明的 dense 模型都太大,在家裡根本跑不出那樣的速度。MoE 模型跨過了這條線,所以現在在本機硬體上既實用又夠快。Dense 模型最終或許也能做到。

EXO Labs - inline image

Dense LLM 與 MoE 的比較

Speculative Decoding(推測解碼)

任何支援 MTP、DSpark 或 DFlash 的 LLM 都會更合適,因為 draft model(草稿模型)通常很小,生成正確 token 所需的運算量也不多。

它能大幅提升 Spark 的吞吐量,代價只是 1 到 2 GB 記憶體——這對 Spark 來說綽綽有餘。

跟 MoE 一樣,推測解碼在任何地方都有幫助,不限於本機。但兩者加在一起,才真正把本機 AI 推過了那道門檻。以前最強的開源模型在家用硬體上跑得慢到令人痛苦。

EXO Labs - inline image

推測解碼如何提升吞吐量

同時跑多個 Agent

一台 Spark 可以同時處理八個以上的請求,而且每個都能維持對話等級的速度。舉例來說,Qwen3.6-35B 具備基礎寫程式、操作電腦與瀏覽器、剪輯影片與圖片,以及一般助理的能力,最多可同時服務 8 個 session,每個大約 40 tok/s。

作為參考,在 ChatGPT Pro 訂閱方案下,GPT-6-Astra 的平均速度為 37 tok/s。

EXO Labs - inline image

Astra 平均速度

這之所以可行,是因為 Spark 相對於它的記憶體速度擁有大量算力。同時服務八個人,代表每一步還是只需要讀一次模型,但要算八倍的量,而 Spark 的算力多到有剩。在 16-bit 下,它以 273 GB/s 的頻寬提供約 100 TFLOPS,換算下來每讀取 1 byte 記憶體大約能做 370 次運算。M3 Ultra 則是 819 GB/s 對應約 26 TFLOPS,大約 32 次(EXO 的數據)。也就是說,在還沒算上 Spark 的 4-bit 硬體加速之前,它每 byte 的算力就已經高出約 11 倍,而 Mac 並沒有這項功能。

實際應用

在一台 Spark 上跑的 Qwen3.6-35B 做了一支影片,一天內就突破 80,000 次觀看。整個過程只花了 3 分鐘:它讀取一個裝了 3 支影片的資料夾,把它們拼接起來,再將影片加速 4 倍,同時把影格率壓在 X 的限制以下。

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

成本

DGX Spark 原價 3,999 美元,後來 漲到 4,699 美元。2026 年所有硬體的價格都上漲了。

實際價格更高。 NVIDIA 官方商店已經賣光。我找得到最便宜的也要約 5,000 美元,二手大約賣 6,000 美元;而在 9 月 21 日,我甚至看到 NVIDIA 官網同一台機器標價 7,999 美元——五週前我才花 4,699 美元買了一模一樣的。

EXO Labs - inline image

GX10 定價

9 月 21 日的 NVIDIA marketplace。貼文連結

EXO Labs - inline image

4000$ - 4700%

購買建議

  • 任何 GB10 機型都行。 ASUS、Dell、MSI 等廠商都有賣同款晶片的不同版本。它們跑的軟體和設定檔都一樣。記得確認 SSD 容量:一旦放了幾個大模型,1 TB 很快就會滿。我會直接選 4 TB。
  • 買第二台 Spark 時記得一起買連接線, 你需要它來把兩台串起來。
  • 有些 OEM 提供的 Spark 散熱風道更好

功耗、噪音與你的電費帳單

獨立顯卡的噪音和發熱量不容小覷,4 張 3090 輕鬆就能吃掉 1600-2000W,記憶體卻只有人家的 1/5。我之前不得不把 RTX Pro 6000 的主機搬出書房,因為它經常把房間烤到 35°C。

一般美國家用電路整天安全承載約 1,440 瓦(美國電氣規範)。超過這個數字就得拉新迴路,也就是要請水電師傅。

  • 一台 Spark 跑模型大約耗電 90-200 瓦(ServeTheHome)。如果全天候開著,一個月大約 12 美元。
  • 四台 Spark 加起來約 500 瓦,交換器約 240W。一個月大約 66-100 美元,而且全都能插在同一個插座上。
  • 我的四卡 GPU 主機 峰值達 1,600 瓦。這已經超過單一迴路的負荷,一個月大約 300 美元。
EXO Labs - inline image

這些數字怎麼來的。 每個數值屬於不同類型的讀數,所以我把它們並列出來。每月成本假設機器全天 24 小時都以該功耗運行,電費以每度 18 美分計算:

EXO Labs - inline image

我的測試

為什麼四台 Spark 的耗電不是 90 W 的四倍。 90 W 是一台 Spark 單獨跑模型時的數字。當一個大模型被切成四份,每台 Spark 都要處理每一個字,網路連線也一直處於忙碌狀態,所以每台耗電都會增加,我實測平均約 125 W。因此每月 12 美元與 66 美元是全天候滿載運行的成本。實際使用會有閒置時間,花費會更低。

電費也沒有變便宜的跡象。美國家用電價今年上漲約 5%,來到每度 18 美分左右,部分原因就是新建的大量資料中心。八月時,我自己的電費翻倍到每月 1,000 美元,GPU 主機、兩台 Spark 和四台冷氣全開。

EXO Labs - inline image

DGX Spark 的聲音

那噪音呢?我的 GPU 主機聽起來像噴射引擎。而這是四台 Spark 最大聲的時候:

幾個實用提醒:

  • 可以用它們跑各種 AI 模型、世界模型、圖像生成等等。
  • 立起來放。 我的機器這樣跑溫度更低,網孔周圍也有空間散熱。
  • 加入 Discord/Reddit/X 社群尋求除錯協助
  • 在你的機器群組上設定 Tailscale
EXO Labs - inline image

我真正在跑的六個模型

我試過幾十個。這六個是我一直回鍋使用的。

EXO Labs - inline image

一個 token 大約是四分之三個英文單字,超過 30 tok/s 讀起來就像正常對話。

為什麼每個數字都要標註任務。 這些設定大多使用推測解碼,由一個小模型先猜答案。程式碼和 JSON 很好猜,散文就不一定了,所以同一台機器上的同一個模型,跑某種任務可能比另一種快一倍。Prompt 越長也會拖慢速度。因此這裡的每個速度都標明了當時在生成什麼內容,以及 prompt 有多長:

要在多種任務間進行正規比較,可以使用 NVIDIA 的 SPEED-Bench,它針對 11 個類別的真實 prompt、輸入長度從 1K 到 32K tokens 來測試推測解碼。我還沒在 Spark 上跑過它。

EXO Labs - inline image

兩台 Spark 上的 Qwen3.8-Flash-Next 正在製作動畫和小遊戲。(9 月 21 日)貼文連結

去哪裡下載。 每個模型都有官方頁面,第 6 節也提供了經過測試的 Spark 設定檔:

大模型到底怎麼塞得進去

答案是量化(quantization)。量化會壓縮模型的權重,而且是破壞性壓縮:每個權重用更少的 bit 儲存(例如 4 bit 而非 16 bit),模型體積縮小到四分之一,但會損失一些細節。目標是在壓縮權重的同時,盡可能貼近原始模型的行為。

壓縮越多,品質越差。Turboderp 針對 Qwen3.8-27B 測量了這一點。每個點代表一個壓縮版本。越靠左越小,越靠下越接近原版:

EXO Labs - inline image

多家提供者推出的 Qwen3.6-35B-A3B 壓縮版本,其平均 KL 散度與磁碟大小的關係。對數尺度。圖表來源:https://huggingface.co/turboderp/Qwen3.8-27B-exl3

在 Spark 上有兩種格式最重要:

  • NVFP4 是 NVIDIA 的 4-bit 格式,Spark 的晶片可以直接讀取。Qwen3.6-35B 從 72 GB 降到 24 GB,一台 Spark 裝完還有剩。
  • EXL3 讓你精確指定要用多少 bit。GLM-5.3-Flash 在 4-bit 下是 176 GB,兩台 Spark 裝得下;2-bit 下是 85 GB,一台就夠,只是會稍微沒那麼精準。
EXO Labs - inline image

提示:

小模型用 4-bit 最剛好,大模型則適合 3-bit

怎麼判斷壓縮後的模型還能不能用。 好的模型卡片會說明縮小版與原版的差距。留意兩個指標:

  • Top-1 agreement(Top-1 一致率): 小模型選出的下一個字與原版相同的頻率。越高越好。我的單台 Spark 版 GLM-5.3-Flash 大約有 80% 的一致率。
  • KL divergence(KL 散度): 它的預測偏離原版的程度。越低越好。我的 3-bit 未剪枝 GLM-5.3 得分 0.089。剪枝後的 197 GB 版本 則是 0.511。這就是為了少用幾台 Spark 所付出的代價。

6. 從一台到四台 Spark:循序漸進指南

這是我最常被問到的部分。一步一步來就好。每一步都能獨立運作,所以你隨時可以在滿意時停下來。

EXO Labs - inline image

下面大多數設定檔來自 MiaAI Lab,他們把最佳的 Spark 配置打包成 repo,你只要 clone 下來,跑一支腳本就能啟動。有幾個是我自己做的。每個都會列出測試環境與運行速度。

先在每台 Spark 上做一次這些事:

  1. 更新系統。 執行 DGX Dashboard 裡的更新,然後重開機。
  2. 讓筆電連得上它。 使用 NVIDIA Sync 或直接 SSH。如果想從家外面連進來,NVIDIA 有一份 Tailscale playbook。
  3. 建立 Hugging Face 帳號與 token。 多數設定檔都用它來下載模型。把它放進 .env 檔,千萬別放進 repo。
  4. 檢查硬碟空間。 模型很大。單台 Spark 的設定檔大約需要 25 到 130 GB 可用空間。四台 Spark 的 DeepSeek 設定檔則需要在第一台上保留約 476 GB。
  5. Docker 已經內建好了。 DGX OS 預設就有,而且幾乎所有設定檔都在裡面跑,所以你不必手動安裝 Python 套件。

Step 1:一台 Spark

先從 LM Studio 開始。 照著 NVIDIA 的逐步指南做,下載 Qwen3.6-35B,然後開始聊天。大概花一小時。這能讓你在碰更複雜的東西之前,先確認機器是正常的。

接著改用設定檔。 設定檔使用 vLLM 或 SGLang,比 LM Studio 更快,還能同時服務多個 Agent。挑一個:

  1. Qwen3.6-35B(4-bit NVFP4)MiaAI Lab 單一使用者 95 tok/s,八人共 317 tok/s ~50 GB
  2. Qwen3.8-27B(4-bit NVFP4)MiaAI Lab 搭配 DSpark 助手跑程式碼約 51 tok/s,聊天約 23 tok/s ~24 GB
  3. Qwen3.8-Flash-Next(4-bit NVFP4)MiaAI Lab 單一使用者 48.7 tok/s,八人共 162.9 tok/s ~130 GB
  4. GLM-5.3-Flash(2-bit EXL3)我的版本,或 Mia 設定檔的單台 Spark 版 10 到 25 tok/s,262K context,支援視覺 ~85 GB

第一個最簡單。只要三行指令:

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

跑起來之後,你就會在 Spark 上拿到一個 OpenAI 風格的網址。把 Pi、opencode、Open WebUI 或你用的任何工具指過去就行。

提示:

如果模型起不來,幾乎都是記憶體不夠。先把其他模型關掉。一台 Spark 一次只能跑一個大模型。

Step 2:兩台 Spark

這是我最推薦的配置。就像我八月說的:"2 台 DGX Spark,搞定。"

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 m,約 159 到 187 美元。
  • 便宜的 200G 選項: NVIDIA MCP1650-V00AE30,約 84 美元。

不管你買哪一種,連線速度都是 200 Gb/s。別用 USB-C 或 10 GbE 埠來接,它們太慢了。

設定連線。 照著 NVIDIA 的 connect two Sparks playbook 做。它會幫每個埠分配位址並檢查速度。接著設定從第一台 Spark(「head」)到第二台(「worker」)的免密碼 SSH。所有雙 Spark 設定檔都需要這一步。

我建議直接叫 claude 或 gpt 幫你設定,會輕鬆很多。

挑一個設定檔:

  1. Qwen3.8-Flash-Next(4-bit NVFP4)MiaAI Lab 搭配 MTP 單一使用者 52.1 tok/s,最高 1M context
  2. GLM-5.3-Flash(4-bit EXL3)MiaAI Lab 單一使用者 62.9 tok/s,四人共 146.5 tok/s,850K context
  3. DeepSeek-V4.1-Flash(2.9-bit EXL3)MiaAI Lab 跑程式碼 38.8 到 43.0 tok/s,600K context
  4. GLM-5.3(3-bit EXL3,剪枝至 197 GB)我的模型卡片 裝得下;速度尚未測量

多數雙 Spark 設定檔流程都差不多:複製範例設定、填入兩台的位址、下載、啟動。這是 GLM-5.3-Flash 的做法:

bash
1cp .env.example .env # 設定 HEAD_IP 和 WORKER_IP
2./download.sh
3./start.sh

注意:

串接 Spark 確實可行,但這也是軟體最不成熟的地方。請照著測試過的設定檔做,第一次最好空出一整個下午。

Step 3:三台 Spark

三台 Spark 不需要交換器。每台 Spark 有兩個 QSFP 埠,所以你可以把它們接成三角形:A 接 B、B 接 C、C 接 A。總共三條線。NVIDIA 支援這種無交換器環狀拓樸。

三台 Spark 給你約 384 GB。這足以應付兩台裝不下的東西:

  • 原生精度的 DeepSeek-V4.1-Flash。 MiaAI Lab 的設定檔 能在三台 Spark 的三角形配置上跑出單一使用者 51.0 tok/s,context 256K。它還有一個 doctor 指令,會在啟動前幫你檢查 SSH、Docker 和網路連線。
  • 空間更充裕的 GLM-5.3-Flash。 雙 Spark EXL3 設定檔 提供了一個給三台用的 start-tp3.sh。
  • 未剪枝的 GLM-5.3。 我的 293 GB 版本 大約需要三台 Spark 的記憶體。

DeepSeek 的設定檔是個很好的例子,可以看出較大規模的配置怎麼跑。它需要幾個步驟,而不是一步到位:

bash
1./start.sh doctor # 檢查 ssh、docker、連線、磁碟
2./start.sh share # 把模型資料夾分享給其他 Spark
3./start.sh serve # 先啟動 worker,再啟動 head

提示:

有些模型只能被 2 或 4 整除切分。買第三台之前,先確認設定檔有寫「3x」。

Step 4:四台 Spark

四台 Spark 給你約 512 GB。有兩種接法。

方案 A:用交換器(我用的方式)。 每台 Spark 拉一條線到 200 GbE 交換器,這樣彼此之間都只隔一跳。NVIDIA 有一份專門的 playbook。大家常用的交換器:

就像我九月說的:"我不認為市場上有比 4 台 Spark 加一台 MikroTik 交換器更划算的組合了。"

EXO Labs - inline image

方案 B:不用交換器。 把四台接成環狀,每台 Spark 與相鄰的兩台連線。不相鄰的 Spark 就透過中間那台溝通。這樣省了交換器,但設定起來更麻煩:

  • SparkRing 是一套完整的軟體堆疊,專為無交換器(switchless)的雙機配對與四台 Spark 環狀拓撲設計。它目前還是 alpha 版本,使用時記得鎖定特定版本。
  • 這份 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-bit NVFP4)無交換器環狀架構 一般約 45 tok/s,熱機後約 100 tok/s

我自己用四台機器跑出的最佳成績是:搭配 DFlash2 輔助模型時,GLM-5.3-Flash 達到 118 tok/s;而 DeepSeek-V4.1-Flash 在短提示詞下則落在 83.8 至 95.3 tok/s 之間(貼文)。

EXO Labs - inline image

每個階段都派得上用場的工具

  • \\sparkDash:\\ 一個網頁儀表板,讓你在同一個視窗監控所有 Spark。可顯示 GPU、記憶體、網路狀態以及即時每秒 token 數。本指南中的部分速度數據就是用它測出來的。
  • \\NVIDIA 的 Spark playbooks:\\ 官方指南,涵蓋 LM Studio、Ollama、vLLM、Spark 串聯等主題。
  • \\local-ai-registry:\\ 我整理的部署方案與所有跑過的速度測試。
  • \\b12x:\\ 許多 Spark 部署方案底層使用的高速運算庫。你不需要手動安裝,方案會自動處理。詳情請見下方的進階說明。
EXO Labs - inline image

結論

Spark 就像一個記憶體的盒子。它能裝載大型模型、安靜地靠家用電源運作,而且每多加一台,效能就跟著提升。

如果你今天就要開始:

  1. 先買一台,第一天就用 LM Studio 跑 Qwen3.6-35B。
  2. 改用部署方案,當你開始追求速度或需要同時跑多個 Agents 時。
  3. 買第二台 Spark 和連接線,當你想跑 GLM-5.3-Flash 或 DeepSeek-V4.1-Flash 時。對多數人來說,到這裡就可以收手了。
  4. 擴充到三台或四台,只有在你想跑最大型的模型,或需要同時執行好幾個模型時才需要。

我會再買一次嗎?會。而且如果一切重來,我第一天就會直接買兩台。

進階:串聯 Spark 如何擴展效能

單純使用 Spark 並不需要懂這些。但如果你想知道數字背後的原理,這段就是為你準備的。

生成文字時,效能接近線性成長

模型每生成一個字,就得從記憶體讀取一次模型的活躍權重。把模型分散到多台 Spark 上,每台就能同時讀取自己負責的部分,因此讀取速度會疊加。

NVIDIA 實測過這個現象。從一台增加到兩台、再到四台 Spark,生成每個字的時間分別從 269 ms 降到 133 ms,再降到 72 ms。也就是兩台帶來 2.0 倍加速,四台帶來 3.7 倍加速(NVIDIA 部落格,表 3)。

EXO Labs - inline image

之所以能這麼接近線性成長,是因為 ConnectX-7 連線的延遲極低,而且 Spark 之間的資料交換可以直接在 GPU 程式碼內部完成。這篇針對 Mac 的說明更詳細地解釋了相同的概念。

每處理完一層,Spark 們必須交換各自的局部結果,才能開始下一層。每次交換的資料量不大,但每一層、每一個字都要做一次。每次都會耗掉一點時間,而這部分時間不會因為增加 Spark 數量而縮短。

  • 連線頻寬為 200 Gb/s,約 25 GB/s。 這大約是 Spark 本身記憶體速度的十分之一。不過沒關係,因為交換的資料量很小。
  • 它使用 RDMA。 資料直接從一台 Spark 的記憶體傳到另一台,不需經過 CPU 複製。每個 QSFP 埠會顯示為兩個 100 Gb/s 的通道,軟體必須同時使用兩者才能跑滿 200(詳細資訊)。NVIDIA 為此開發的函式庫 NCCL 會自動處理這件事。
  • 讀取的擴展性不如生成。 在同一份 NVIDIA 測試中,讀取 32K token 的提示詞時,兩台 Spark 快了 1.6 倍,四台快了 2.1 倍。這是因為讀取時每一步需要在 Spark 之間傳輸更多資料。
  • 環狀拓撲會增加跳數。 在三台 Spark 組成的三角形中,每台都與另外兩台直接相連。但在四台 Spark 的環狀架構中,某些配對得透過鄰居傳遞資料。若使用交換器,則所有節點都只隔一跳。SparkRing 自行編寫了交換程式碼(SIRCL)來提升環狀架構的速度。
  • 混合專家(MoE)模型會引入第二種切分方式。 部署方案通常會將張量並行與「專家並行」結合,讓不同的 Spark 負責不同的專家。

另外兩種提速方式

  • 多使用者同時連線。 Spark 每個步驟只需讀取一次模型,就能用同一次讀取的結果回覆所有人。因此整體吞吐量的成長速度遠快於單一使用者的速度。
  • 使用推測解碼模型提前猜測。 MTP、DSpark 和 DFlash2 都是這種做法。由一個輕量快速的輔助模型先草擬幾個字,再由大模型一次性讀取驗證。猜對的時候,花一份力氣就能得到好幾個字。這就是為什麼在同一份部署方案中,GLM-5.3-Flash 生成一般文本的速度是 27 tok/s,而結構化輸出卻能飆到 65 tok/s。
EXO Labs - inline image

單台 Spark 以 4 bits 執行 Qwen3.6-35B-A3B,並開啟加速輔助模型。資料來源:local-ai-registry 速度測試,2026 年 8 月。

雲端 AI 與本地 AI 是兩回事

雲端 GPU 比 Spark 快得多。但雲端供應商會讓許多使用者共享同一張 GPU,並在「每 token 成本」與「每位使用者的速度」之間取捨。多數人選擇壓低成本,因此每位使用者拿到的每秒 token 數,遠低於硬體單獨服務一人時的上限。InferenceX 就把 Qwen3.8-Flash-Next 的這項取捨畫成了圖表。

在家裡,這個取捨並不存在。機器是你的,你可以把所有算力都砸在一個人身上。這就是為什麼 Spark 用起來可以跟雲端服務一樣快,即使硬體規格其實差很多。

sm_121:為什麼 Spark 的軟體生態自成一格

每款 NVIDIA GPU 都有一個「運算能力」(compute capability)編號,用來告訴軟體它支援哪些指令。Spark 的 GPU 是 12.1,也就是 sm_121(Simon Willison 的初步體驗)。RTX 5090 和 RTX PRO 6000 則是 sm_120,算是近親。而 NVIDIA 的資料中心晶片 B200 與 B300 屬於 sm_100 和 sm_103,是另一個家族。

這很重要,因為最快的 AI 程式碼通常是針對單一架構家族撰寫的。Spark 剛推出時,很多程式碼要嘛跑不起來,要嘛跑得慢(NVIDIA 論壇、vLLM issue)。

解決之道,就是大家開始為 Spark 量身打造程式碼:

  • Local Inference Lab 開發的 b12x 是一個針對 sm_120 與 sm_121 的核心函式庫,支援 DGX Spark、RTX Spark、RTX 5090 和 RTX PRO 6000。它涵蓋 4-bit 矩陣運算(NVFP4、MXFP4)、DeepSeek 風格模型的注意力機制、混合專家層,以及高速模型載入器。安裝方式是 pip install b12x,vLLM 部署方案則透過 flashinfer_b12x 之類的旗標啟用它。Qwen3.6-35B 部署方案就有使用它。
  • SparkInfer 是 b12x 的舊名。舊連結現在會重新導向至 b12x。我的單台 Spark DeepSeek 部署方案在讀取與生成時都用了它的注意力程式碼。別把它跟 gittensor 的 sparkinfer 搞混了,後者是專為 RTX 卡(僅限 sm_120)設計的獨立執行環境。
  • ExLlamaV3 是用來執行 EXL3 模型的引擎。MiaAI Lab 維護著一個分支,加入了 Arm(GB10)移植版與輔助模型支援。
  • lil 是 Local Inference Lab 的啟動工具。它會讀取機器的配置,並為單台 Spark 或串聯群組產生正確的 vLLM 指令。

進階:把 Spark 當作研究機器

這是我原本沒料到的部分。Spark 生成文字的速度偏慢,但讀取能力非常強。而模型研究的大部分工作,其實都是讀取。

Spark 最擅長的事:prefill

模型有兩種不同的工作:

  • Prefill 是讀取你的提示詞。整個提示詞會一次送進去處理,因此瓶頸在於原始運算力。GB10 在這方面綽綽有餘:最高可提供 1 petaflop 的 4-bit 運算力。
  • Decode 是逐字生成答案。每生成一個字都得重新從記憶體讀取模型,因此瓶頸在於記憶體速度。這正是 Spark 的弱項。

所以 Spark 讀取提示詞的速度,是生成速度的 13 到 41 倍:

EXO Labs - inline image

四台 Spark 執行 DeepSeek-V4.1-Flash:讀取 32K token 提示詞時達 3,360 tok/s,131K 時為 3,273 tok/s,而生成速度維持在 70 到 95 左右。(9 月 20 日)貼文

為什麼這正是研究所需要的

我在壓縮模型時所做的工作,幾乎全都是讀取而非生成:

  • 量化(減少位元數)。 製作 EXL3 和 NVFP4 版本時,需要讓樣本文本通過模型,並測量每一層在不同位元寬度下的精度損失。這就是讀取。
  • 剪枝(減少專家數量)。 REAP 會讓樣本文本通過混合專家模型,並記錄每個專家被使用的頻率,然後淘汰最不常用的專家。我的 197 GB GLM-5.3 保留了 256 個專家中的 168 個。這也是讀取。
  • 檢查品質。 Top-1 一致率與 KL 散度,是讓同一段文字分別通過原始模型與小型模型,再比較兩者的預測結果。又是讀取。
  • 長上下文測試。 要驗證模型能否在 262,000 個 token 中找到某個事實,基本上就是一次超長的讀取。

我自己的工作流程正是因為這個原因而改變。「我現在把所有的剪枝/exl3/基準測試都放在 DGX Sparks 上跑,RTX 6000 則專門用來做推論。雖然慢一些,但 2-3 天對比 12 小時完全沒問題。」那個下載量突破 100,000 次的單台 Spark DeepSeek 模型,就是經過 REAP 剪枝與 EXL3 壓縮的成果。

這如何呼應研究目標

如果你的目標是深入了解某個模型,Spark 會非常合適:

  • 它裝得下大模型。 你可以用一兩台機器測量 300B 模型,不必去租叢集。
  • 靠家用電源就能連續跑上好幾天。 長時間的校準與評估工作可以無人值守地執行,不用擔心電費爆表。
  • 解放你的高效能硬體。 我的 GPU 負責提供模型服務,而 Spark 則去做那些緩慢但需要耐心的工作。
  • 你可以用自己的資料進行校準。 我曾用自己的 Agent 對話紀錄與文章來剪枝模型,這些資料既私密,又全程留在我的書桌上。
  • 它是研究用 Agents 的絕佳主機。 我曾讓四個 Agents 同時在 Spark 上執行研究任務,每個都能跑到約 120 tok/s。
  • 訓練在多 Spark 間擴展性良好。 在 NVIDIA 的測試中,微調工作在兩台 Spark 上快了 2 倍,四台上快了 4 倍,因為 Spark 每個步驟只需同步一次(表 5)。NVIDIA 的 playbooks 也有介紹如何用 PyTorch 進行微調。我自己還沒實際測量過訓練時間。

進階:GB10、GB300,以及把 Spark 當作額外記憶體

「GB」代表 Grace Blackwell:一顆 Arm CPU 與一張 Blackwell GPU 封裝在一起,透過名為 NVLink-C2C 的高速通道共享記憶體。Spark 裡的 GB10 是這個概念的最小版本,搭載與 MediaTek 合作打造的 20 核心 Arm CPU。

GB300 則是資料中心版本:Grace CPU 搭配 Blackwell Ultra(B300)GPU。它被用在 NVIDIA 的 GB300 NVL72 機櫃中,而單顆 GB300 就能驅動 DGX Station。GB10 並不是從 GB300 上切下來的一塊,而是相同設計的小型化版本,這也是為什麼同一套軟體能在兩者上執行。

EXO Labs - inline image

結論

DGX Spark 已經在我家中佔有一席之地,而且它的支援度、實用性與能力每天都在成長。

資料來源與延伸閱讀

一鍵儲存

使用 YouMind AI 深度閱讀爆款文章

保存原文、追問細節、總結觀點,並在一個 AI 工作空間裡把爆款文章沉澱成可複用筆記。

了解 YouMind
寫給創作者

把你的 Markdown 變成乾淨的 𝕏 文章

圖片上傳、表格、程式碼區塊,往 𝕏 上手動重排太痛苦。YouMind 把整篇 Markdown 一鍵轉成乾淨、可直接發佈的 𝕏 文章草稿。

試試 Markdown 轉 𝕏

更多可拆解樣本

近期爆款文章

探索更多爆款文章