改动 / #2593
#2593 Community benchmark: RTX 3090 + RTX 3060, an unequal pair, both card orders (Qwen3.8-Flash-Next IQ2_XS)
open · @TurtleFlyRU · 0 评论 · 去 GitHub 看
BenchmarksMulti-GPUNVIDIA / CUDAModels & quantsDocumentationWindowsLinux
说明
A community benchmark answering the first item of `docs/TEST_REQUESTS.md`: two NVIDIA cards of different sizes, both card orders, `--layer-split auto`. **Rig:** RTX 3090 24 GB (PCIe 4.0 x16, 250 W) + RTX 3060 12 GB (PCIe 3.0 **x4**, 130 W), Ryzen 7 7700X, 122.6 GiB RAM, Linux, Qwen3.8-Flash-Next GSQ-RCO IQ2_XS (native pack), Strata 0.1.43 / `7695859a`, `--max-context 131072 --kv int8 --kv-resident 32768`, 1 parallel slot. Probed links 26.8 GB/s (x16) against 3.4 GB/s (Gen3 x4), so the link gap is real, not a probe artifact. **What the report contains** - The standard suite, 3 runs per test, quiet runs, from 4K to 64K prompts plus the agent session: 114.8 tok/s short-chat decode, 1704.6 / 1945.1 / 1949.5 / 1982.0 tok/s at 4K / 16K / 32K / 64K. - **Both card orders of the same unequal pair.** With the small x4 card first (the engine's default reorder, 3060 layers 0-2, 3090 layers 3-47) decode is 5.0% higher and prompt reading 9.3-13.5% higher than with the big card first (3090 layers 0-44, 3060 layers 45-47). The two independent runs of the latter agree within 0.2% on every row, so it is the placement and not run-to-run spread. - A 128K-256K sweep (actual prompts 127,710 to 255,433 tokens) of int8 / k8v4 / q4_0 at `--kv-resident 32768`: int8 is fastest at reading the prompt at every size, k8v4 is 2.4-3.4% behind, q4_0 loses 5.1-5.2% of decode at 224K and 256K. The memory saving is real (0.26 / 0.20 / 0.14 GiB of pinned K/V) but buys only 69 and 144 expert slots out of ~12,800 and nothing in speed. - Eleven opt-in settings in the same batch, none worth keeping here: `--pipeline-windows 2` -15.5% decode, `STRATA_PF_FUSED=1` -9 to -15.4% prompt on the 3090 alone (the opposite sign to `docs/MULTI_GPU.md` on 2x 3090), `STRATA_PCIE_AUTO_SPLIT=1` nothing, `--adapt-async 1` nothing even with `--resident-experts`, `--trim-stage-weights` +1.2% decode against its own control. - Needles 8K / 16K / 28K at depths 10 / 50 / 90: 9 of 9 for each of the three KV formats. **One thing I think is a bug, reported separately:** on the split the engine's per-request counter is `KV streaming: 100.00% of 0 block reads hit VRAM, 0.0 MiB read from RAM` at every context size and with every KV format, while the same machine, build and `--kv-resident 32768` on the 3090 alone reports `89.58% of 246456 block reads hit VRAM, 103.5 MiB read from RAM` for the same residency line (`32768 of 131072 cells per QSA layer in VRAM`). The two start lines also print 0.13 GiB of pinned K/V on the split against 1.55 GiB on one card, which I cannot explain either. Reported as #2594 with the full logs. Results only: no engine change and no tool change in the tree. The `--huge` flag used for the 64K column is a local opt-in addition to `tools/strata_bench.py`, included as `huge-flag.patch` in the folder (`git apply`) and offered upstream separately; without it the suite is unchanged. The folder also carries `long-context/ctx_sizes.py`, the small tool that produced the 128K-256K numbers, and `singles/`, the same suite on each card alone for the comparison rows. Storage: two NVMe; the pack and the model files are on different physical disks. Power limits left at 250 W / 130 W and not changed. Background load: four of the arms overlapped a large file download on the other NVMe (named in the report).
本站相关内容
相关页面的快捷入口。