Pull requests / #2545
#2545 bench: a server on another PC (--url) is not described with this PC's RAM, OS, driver and CUDA (#2062)
open · @qiuzan2001 · 0 コメント · GitHub で見る
BenchmarksServer & APINVIDIA / CUDADocumentationWindowsLinux
本文
On #2062: the remaining point from the second comment (the folder/title and GPU-selection parts were fixed in
905a6058 and #1985).
**What it changes.** With `--url` of a Strata server on another PC, `collect_machine()` in `tools/strata_bench.py`
filled the report's machine block partly from the client: the RAM total (`ram_gib: 3.8` from the client VM on a 64 GB
box, in #2062), the OS, and the GPU driver, CUDA version and card list from the client's `nvidia-smi`. A new
`on_this_pc(base)` says whether the URL's host is this PC: a loopback or unspecified address, or an address this PC
can bind to (its LAN address, another network card; no reverse DNS). When it is not:
- the cards and VRAM come from the server (`/metrics` `hardware_static.gpu_name`, `/v1/status` `machine.gpu.total_mib`),
through the existing #2001 branch; this PC's cards are not read;
- the RAM total comes from the server's `/v1/status` `machine.ram.total_gib`;
- OS, GPU driver and CUDA are `null` in results.json, and the README says "not read" (the server does not report them);
the CPU name and threads were already the server's, and are no longer filled in from the client when it lacks them.
**What it leaves alone.** A server on this PC (`127.0.0.1`, which is every run where the bench starts the server
itself, `localhost`, or this PC's own address): `collect_machine()` reads exactly what it read before. The README's
OS line only adds `or 'not read'`, which never shows when the OS is read. Still taken from the bench's side: the
project version and commit (they describe the checkout the bench runs from) and the Python version. The helper-card
question in the issue (`--expert-cache-device1 auto`) is not touched.
**How it was checked.**
- New tests in `tools/test_strata_bench.py`:
- `test_a_server_on_another_pc_is_not_described_with_this_pc_2062`: a fake server answered at a TEST-NET-1 address,
and this PC with a card of the same name, 16 GiB and 3.8 GiB RAM: the report has the server's 12 GiB and 64 GiB,
and no driver, CUDA or OS. The same server at 127.0.0.1 still gets this PC's reads. A full `main()` run's README
says `- OS: not read; GPU driver: not read; CUDA: not read`. On `main` it fails on the assertion (16384 / 3.8 GiB
recorded).
- `test_on_this_pc`: loopback (v4, v6, v4-mapped), `0.0.0.0`, `localhost`, this PC's outgoing address -> this PC;
`192.0.2.7` and an `.invalid` name -> not.
- `python3 tools/test_strata_bench.py`: 19 tests OK. `tools/test_setup_bench_tips.py`, `tools/test_windows_amd_gpu.py`:
OK. (`tools/test_strata_mcp.py` has 4 failures in `StartStop` on `upstream/main` on this box too, with or
without this change.)
- Python 3.14, Ubuntu (Linux 7.0); no GPU needed. Not run against a real server on a second PC, and not run on Windows.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
関連リンク
インストール・モデル・リリースへの站内リンク。