Issues / #2939
#2939 4× Tesla T10 (Turing, layer split): single-stream decode stays ~39 tok/s with 99.9% of experts in VRAM — same as 2× T10
open · @demon851113 · 0 comentários · No GitHub
BenchmarksAMD / HIPNVIDIA / CUDAModels & quantsWindows
Descrição
**Hardware** | | | |---|---| | Motherboard | Huananzhi H12D-8D (single socket SP3), BIOS 2.2 (2026-01-06), no BMC | | CPU | AMD EPYC 7452, 32 cores / 64 threads (Zen 2), 1 socket, 1 NUMA node | | RAM | 4 × 32 GB Samsung DDR4-2400 RDIMM (M386A4G40EM2-CRC) = 128 GB, 4 of 8 memory channels populated | | GPUs | 4 × Tesla T10 16 GB (TU102, sm_75, VBIOS 90.02.41.00.01), passive cooling, power limit 100 W each (default 150 W) | | PCIe | every card on its own CPU root port, Gen3 x16 (LnkCap 8 GT/s x16); `nvidia-smi topo -m`: NODE between all pairs; P2P works with `iommu=pt` (10–13 GB/s per pair) | | Storage | Crucial T500 1 TB NVMe (model files on it) | **Software** - Ubuntu 24.04.3, kernel 7.0.0-38-generic, kernel parameter `iommu=pt` - NVIDIA driver 595.91.07 (server, open kernel modules), CUDA 13.2 toolkit - Strata v0.1.45 (477ac13c), engine compiled locally with CUDA 13.2 (no ready-made engine for v0.1.45: releases/latest returned 404) - Qwen3.8-Flash-Next GSQ-RCO IQ3_S, `--spec 4 --spec-min-p 0.5 --mtp rt --kv int8 --kv-resident 32768 --max-context 262144`, `"gpu": [0,1,2,3]`, `"layer_split": "auto"` **What the log says** - `layer split auto: K=14,26,38 - predicted 44.8 ms per decode window; the caches hold 21931 of 24576 profiled pairs (~99.9% of the routed mass)` - `CUDAn 56 SMs at 1.40 GHz -> 0.93 ms per layer`, every link probed at 13.1 GB/s (pcie_frac 0.36) - `adaptive overlap: off: not on a layer split` - After load: CUDA3 has 341 MiB VRAM free and gets the "LOW ... add --vram-reserve-later-mib" warning - MTP draft acceptance on 300-character Chinese answers: roughly 95–119 of 166–203 drafts (~55–65%) **Measured** (6 Chinese prompts, ~300 characters each, no thinking, temperature 0, warm-up + median of 3 rounds) | | tok/s | |---|---| | single stream decode | 39.3 | | same, with `"parallel": 4` | 38.9 | | 2 concurrent (`parallel` 4) | 36.5 / 38.9 per stream | | 4 concurrent (`parallel` 4) | 27–32 per stream, 104 total | | prompt read, 2.6K / 10K tokens | 527 / 723 | For comparison, #2007 reports 44.2 tok/s on **2×** T10 with v0.1.40.1 and 40.5 on 0.1.43 (the regression between 0.1.40.1 and 0.1.40.2 noted there). Our 4-card result is below both, even though four cards hold almost every expert. **Questions** 1. With nearly all experts resident, single-stream decode looks bound by the four stages running one after another (~0.93 ms per layer × 48 layers ≈ the predicted 44.8 ms window). Is there a way to overlap the stages for one stream on 3+ NVIDIA cards (`--pipeline-windows` mentions two GPUs / AMD gfx12 only), or is 4-way split simply not expected to beat 2-way for a single user? 2. Is the 0.1.40.1 → 0.1.40.2 slowdown from #2007 still present in 0.1.45 on Turing? We can run an A/B (0.1.40.1 vs 0.1.45) on this box if useful. 3. Would `--prefill-pipe` or a manual `layer_split` be worth trying for prompt reading here (723 tok/s at 10K tokens)? Happy to run any flag combination or a debug build — the box is free for testing.
No site
Links install, modelos, releases.