最近看到 LCZ 上有雙 RTX 5070 Ti 跑 Qwen3.8-27B 的分享,對方使用 tensor split + MTP,在特定條件下可達 50–75 tok/s。這裡整理自己的非對稱雙卡實測,想請教有經驗的玩家:在 5070 Ti + 3070 Ti 上,是否有更適合的 split mode、CUDA 參數或其他穩定優化方向?
一、硬體與軟體
- GPU 0:RTX 5070 Ti 16GB
- GPU 1:RTX 3070 Ti 8GB
- 系統:Windows 原生 llama.cpp
- llama.cpp runtime:b10509
- GPU split:
16,8
- split mode:
layer
- main GPU:GPU 0
--parallel 1
- MTP:關閉
- Vision/mmproj:本篇主測試關閉
- 電腦平時仍有 Windows 桌面常駐程式,因此 GPU 0 不會完全零占用;GPU 1盡量保持乾淨
兩張卡不是同型號,VRAM、記憶體頻寬與運算能力都不同,因此沒有照搬雙5070 Ti的tensor-split 1,1。
二、Qwen3.8-27B IQ4_NL:Vulkan 224K Thinking-On 真實Coding Agent
啟動條件
Model: Qwen3.8-27B-IQ4_NL.gguf
Runtime: Windows b10509 Vulkan
Context: 229,376 tokens(224K)
Split: layer / 16,8
KV: IQ4_NL K/V
Thinking: On
Vision: Off
MTP: Off
Parallel slots: 1
這不是固定短prompt benchmark,而是實際 DSH coding-agent 工作流,共117筆已完成樣本,包含工具操作與上下文逐步累積。
Decode 曲線
| 實際使用Context |
樣本數 |
Decode中位數 |
| 0–16K |
4 |
31.53 t/s |
| 16–32K |
2 |
30.41 t/s |
| 32–64K |
3 |
26.27 t/s |
| 64–96K |
12 |
23.23 t/s |
| 96–128K |
26 |
22.30 t/s |
| 128–160K |
62 |
19.72 t/s |
| 160–192K |
5 |
17.74 t/s |
| 192–224K |
3 |
16.87 t/s |
穩定性
- 最高完成Context:210,515 tokens(205.58K)
- 最低健康Decode:16.71 t/s
- Pipeline fallback:0
- Vulkan OOM:0
- Decode failure:0
- llama.cpp truncation:0
DSH在約204.8K壓力門檻先做tool-result pruning,實際曾將server可見Context從210,515降到137,108;壓縮後下一輪Decode從16.87恢復到20.18 t/s。這次長Context工作全程可以正常完成。
三、同一模型改用Windows CUDA
Q4_0 KV結果
Model: Qwen3.8-27B-IQ4_NL.gguf
Runtime: Windows b10509 CUDA
Split: layer / 16,8
KV: Q4_0 K/V
Thinking: Off(速度邊界測試)
MTP: Off
| Max Context |
啟動/請求 |
8K附近暖機Decode |
| 128K |
正常 |
37.83 t/s |
| 160K |
正常 |
38.49 t/s |
| 192K |
正常,最高確認 |
38.51 t/s |
| 224K |
CUDA1 compute-buffer OOM |
— |
| 256K |
CUDA1 compute-buffer OOM |
— |
192K、Q4_0 KV的原始Decode曲線:
1K 38.31 t/s
8K 36.84 t/s
16K 35.14 t/s
32K 32.37 t/s
65K 27.81 t/s
98K 24.32 t/s
131K 21.69 t/s
164K 19.55 t/s
CUDA + IQ4_NL KV
同一模型在CUDA改用IQ4_NL K/V可以載入,但實際進入病態慢速路徑:
- 8K左右Decode約3.66 t/s
- Prompt processing也會隨長度明顯下滑
- 沒有看到熱降頻,較像CUDA backend/kernel路徑問題
因此目前實用分工是:
Vulkan:IQ4_NL KV
CUDA:Q4_0 KV
四、另一顆Qwen3.6 35B-A3B MoE對照
本機另有:
Qwen3.6-35B-A3B-UD-IQ4_NL
它是MoE,不是Dense,GGUF約16.8 GiB;Qwen3.8-27B IQ4_NL約15.2 GiB。雖然MoE權重檔較大,但它的KV架構較省,且每token只啟用部分expert。
Windows CUDA、Q4 KV、262K設定下,曾做過真實BunnyGO工作流曲線:
| 使用Context |
Decode中位數 |
| 0–10K |
118.27 t/s |
| 10–30K |
111.22 t/s |
| 30–60K |
93.85 t/s |
| 60–90K |
80.96 t/s |
| 90–120K |
70.07 t/s |
| 120–150K |
59.11 t/s |
| 150–180K |
51.19 t/s |
| 180–200K |
48.46 t/s |
這顆目前比較適合高速文書、Wiki審查與大量Agent任務;Qwen3.8則保留給coding、複雜推理和重要review。
五、目前採用的方案
Qwen3.8-27B IQ4_NL
→ Coding主力
→ Vulkan / 224K / IQ4_NL KV / Thinking On / layer 16,8
Qwen3.6-35B-A3B UD-IQ4_NL
→ 高速任務主力
→ CUDA / Q4 KV / 可到262K / layer 16,8
六、想請教的問題
- 在 RTX 5070 Ti 16GB + RTX 3070 Ti 8GB 這種非對稱雙卡上,
split-mode tensor是否值得嘗試?還是layer + 16,8通常更適合?
- 如果改用tensor split,是否有建議的比例?不確定
1,1在非對稱卡上會不會讓3070 Ti成為瓶頸。
- Qwen3.8-27B IQ4_NL在CUDA上使用IQ4_NL KV會固定進入慢速路徑,是否有人在較新的llama.cpp版本、CUDA版本或特定參數下成功改善?
- 對長Context coding agent來說,MTP在雙卡非對稱配置下是否真的值得?目前觀察到MTP會增加VRAM與配置複雜度,因此暫時關閉。
- 有沒有適合這種非對稱雙卡、要求單slot長Context與穩定性的llama.cpp參數建議?