RTX 5080 與 RTX 3090 多 GPU 設定用於 Qwen 3.6 27B
使用 NVIDIA RTX 5080 (16GB) 與翻新 RTX 3090 (24GB) 的混合 GPU 配置,在執行 Qwen 3.6 27B Q8 量化模型時,可以達到每秒 80 到 90+ 個 token (tok/s) 的推論速度。此設定利用總計 40GB 的 VRAM 來容納模型以及透過 Q8 KV-cache 量化實現的大型 230k 上下文視窗。
硬體配置與 PCIe 要求
若要在不同世代(Blackwell 與 Ampere)之間使用兩張 GPU,主機板必須支援 PCIe 通道拆分。
- 主機板: 使用 Asus Prime X570-Pro 將 16x PCIe 插槽拆分為 2x8。
- 連接性: 需要高品質的 PCIe 4 riser 來連接第二張 GPU。
- VRAM 總量: 16GB (RTX 5080) + 24GB (RTX 3090) = 總計 40GB 可用 VRAM。
BIOS 與系統設定
正確的 BIOS 配置對於多 GPU 識別與效能至關重要。不支援以 BIOS/MBR 模式啟動;必須使用 UEFI。
在 BIOS 中必須設定以下參數:
- CSM (Compatibility Support Module): 已停用 (Disabled)
- Above 4G Decoding: 已啟用 (Enabled)
- ReSize BAR Support: 自動 (Auto) 或 已啟用 (Enabled)
- PCIEX16_1 Link Mode: Gen 4
- PCIEX16_2 Link Mode: Gen 4
驅動程式與核心安裝
對於混合世代的 NVIDIA 卡,建議選擇 nvidia-open 驅動程式。雖然修補過的驅動程式(例如來自 open-gpu-kernel-modules)對於相同的 GPU 可能有效,但混合不同架構時通常會失敗。
若要驗證設定,nvidia-smi 指令應顯示 RTX 3090 與 RTX 5080 皆為活動裝置。若要檢查 PCIe 埠是否以全速運行(16GT/s, Width x8),請使用以下指令:
sudo lspci -vvv -s 07:00.0 | grep "LnkSta:"
llama.cpp 編譯與執行
編譯參數 (Build Flags)
為了支援 Ampere (RTX 3090) 與 Blackwell (RTX 5080) 架構,llama.cpp 必須使用特定的 CUDA 架構參數進行編譯:
cmake -B build -DBUILD_SHARED_LIBS=OFF -DGGML_CUDA=ON -DGGML_NATIVE=ON -DGGML_CUDA_FA=ON -DGGML_CUDA_FA_ALL_QUANTS=ON -DCMAKE_CUDA_ARCHITECTURES="86;120" -DCMAKE_CUDA_COMPILER=/usr/local/cuda/bin/nvcc -DGGML_CUDA_NCCL=OFF
CMAKE_CUDA_ARCHITECTURES="86;120":啟用對兩代 GPU 的支援。-DGGML_CUDA_NCCL=OFF:發現在此特定配置中,使用 NCCL 反而會降低效能。
執行參數
使用以下參數執行 llama-server 可優化 VRAM 使用量與吞吐量:
llama-server -m ./models/Huihui-Qwen3.6-27B-abliterated-ggml-model-Q8_0.gguf \
-c 229376 \
-np 1 -fa on -ngl 99 -ub 512 -t 6 --no-mmap \
--temp 0.7 --top-p 0.8 --top-k 20 --min-p 0.0 --presence-penalty 0.0 --repeat-penalty 1.0 \
-ctk q8_0 -ctv q8_0 --kv-unified \
--chat-template-kwargs {"preserve_thinking": true} \
--spec-type ngram-mod,draft-mtp --spec-draft-n-max 3 \
-sm tensor -ts 2,3 \
--port 8001 --host 0.0.0.0
關鍵優化細節:
-sm tensor:為多 GPU 設定啟用張量拆分 (tensor splitting)。-ts 2,3:設定顯卡使用比例,以確保所有 VRAM 被高效地填滿。--spec-type ngram-mod,draft-mtp:使用多標記預測 (Multi-Token Prediction, MTP) 與 ngram-mod 進行投機採樣 (speculative decoding) 以提升 token 生成速度。-ctk q8_0 -ctv q8_0:將 KV-cache 量化為 Q8 以節省記憶體,同時維持 230k 的上下文視窗。
效能結果
此配置在執行 Qwen 3.6 27B Q8 模型時,可達到約每秒 81.84 到 91.13 個 token 的生成速度。
社群洞察與不同觀點
社群用戶針對此設定提供了額外的技術細節與考量因素:
- 參數微調: 有些用戶建議,對於處於「思考模式」的 Qwen 3.6,最佳設定為
--temp 1.0 --top-p 0.95 --top-k 20 --min-p 0.00,而程式碼任務則受益於--temp 0.6。此外,有人認為在 NVIDIA 硬體上,--spec-draft-n-max 2比 3 更穩定。 - 模型替代方案: 雖然作者使用了
huihui-ai的 abliterated 模型,但部分社群成員推薦使用heretic或ExCal版本以獲得更好的品質。 - 電力與散熱: 一個關鍵的運作考量是功耗。這種規模的雙 GPU 設定在滿載時可能消耗高達 700W,整個系統可能達到 1kW,因此需要高品質的電源供應器 (PSU) 與散熱管理。
- 成本效益分析: 有些用戶指出,對於低頻率使用,支付 API 存取費用(例如透過 OpenRouter)會比投入超過 2,000 美元的硬體與電力成本顯著更低。
- 替代硬體: 其他用戶回報了類似的效能能,例如使用更經濟的組合,例如在 MACHINIST X99 主機板搭配 Xeon CPU 的情況下,使用兩張 RTX 3080 20GB 顯卡。