Pull requests / #2904

#2904 bench: RX 7900 XTX (gfx1100) via OCuLink x4 eGPU dock on a UGREEN iDX6011 Pro NAS — Flash-Next IQ3_XXS, 262K, depth sweep to 248K

open · @faf-net · 0 commentaires · Sur GitHub

BenchmarksSetup & installAMD / HIPModels & quants

Description

Adds a community benchmark: **AMD Radeon RX 7900 XTX 24 GB (gfx1100) in an eGPU dock behind an OCuLink PCIe 4.0 x4 link, hosted by a UGREEN iDX6011 Pro NAS** (Core Ultra 7 255H, 6 P + 8 E + 2 LP-E cores, 64 GB LPDDR5X, UGOS Pro 1.19 / kernel 6.18.15). Results only, no engine changes.

## Setup

- Strata `296b59d` source build (engine 0.1.44.1), HIP backend, ROCm 7.10.0a20251120 (TheRock wheels), Ubuntu 24.04 container
- Qwen3.8-Flash-Next ISTA-DASLab GSQ-RCO **IQ3_XXS**, native pack, MTP head `rt`
- `--max-context 262144 --kv int8 --spec 4 --spec-min-p 0.5 --mtp rt --pool-workers 9 --pcie-frac 0`, conversation cache 4,608 MiB

## Results (medians)

- `strata_bench.py --long`: chat decode 63.7 tok/s; prompt 741 / 1,195 / 1,224 tok/s at 4K / 16K / 32K; agent session cache hit 68.6 %, decode 74.0 tok/s
- Context-depth sweep, fresh prompts 1K → 248K: decode **62.0 → 56.1 tok/s** with MTP, 48.9 → 44.9 without the MTP head; prefill 1,080–1,270 tok/s from 16K to 248K over the x4 link; MTP acceptance 48–57 %
- `needle_bench.py`: **9/9** at 32K, 128K and 250K (depths 10/50/90 %)
- **Quality vs mainline llama.cpp on the same GGUF** (quant_quality.py text set, 4,995 positions, teacher-forced): **95.7 % same top token, KL 0.020, perplexity 4.009 vs 4.017** – the same gap as between Strata's own CPU and GPU expert paths (95.7 %, KL 0.018). Scripts and data in `quality-vs-llamacpp/`
- `--pool-workers` on the hybrid CPU (IQ2_XS): automatic 56.1 vs 9 workers 76.8 tok/s (+27 %); `--pool-affinity p-cores` / `measure` (0.1.45) did not beat 9 workers. `measure` detected the CPU as "8 P-cores / 8 threads, 8 E-cores" (the 255H has 6 P + 8 E + 2 LP-E)
- `--pcie-frac 0` over x4: no loss against the automatic fraction (76.9 vs 76.8 tok/s)
- 0.1.44.1 vs 0.1.45 on gfx1100: no measurable speed difference; greedy output differed in 2 of 3 short prompts that 0.1.44.1 answered identically twice
- Card power: 286 W decode, 318 W prefill, 58 W idle with the model loaded

## Limitations

- No coding or task-level suite; quality is covered by the llama.cpp comparison (FP16 K/V, so int8 K/V is not covered) and the needles. 2 runs per depth at 128K and 248K. One machine, one day, the NAS's other services running in the background.
- `strata_bench.py` ran inside the server container without `rocm-smi`, so GPU name, driver and model label were filled in by hand; `bench-output.md` is the unedited tool output.
- The baseline is the `296b59d` branch build, not the 0.1.44.1 release.
- Note for eGPU users (not a Strata issue): a dock link drop with a loaded ROCm model oopses kernel 6.18 in the KFD queue teardown, and with `panic_on_oops=1` the host reboots. Details in the report.

Full write-up of the hardware setup: https://github.com/faf-net/ugreen-idx6011-egpu-llm

Sur le site

Liens install, modèles, releases.