mirror of
https://github.com/Crosstalk-Solutions/project-nomad.git
synced 2026-10-17 21:29:20 +02:00
Under WSL2 the GPU is reached through /dev/dxg rather than the real adapter, so si.graphics() returns Microsoft's generic placeholder even while CUDA work runs on a physical card. isUnresolvedGpuModel() caught blanks, "Device <hex>" and "Unknown" but not this, so the placeholder was accepted as a legitimate model name and the authoritative detection path was skipped. The reporter on #1218 has an RTX 3090 doing real work (92% utilisation, 11.6 GB VRAM, 352 W, 127.9 tok/s) that reaches the public leaderboard labelled "Microsoft Basic Render Driver". A wrong label is worse than none: it fragments per-hardware grouping, which is the same failure #1165 fixed for raw PCI ids. Adds Microsoft's two placeholder adapter names to the same rejection list. Scoped so it cannot affect anyone off WSL: these are Microsoft's own placeholder names and appear nowhere outside a Windows/WSL graphics stack, so on a native Linux host the function returns exactly what it returns today. Checked against real product names from all four vendors, including "Microsoft Basic Renderer Pro 9000" as a near-miss, to confirm the anchored pattern cannot swallow one. Note this makes the model resolve to unknown rather than to "RTX 3090": the admin container has no nvidia-smi and WSL's copy lives at /usr/lib/wsl/lib, outside the container. Honest-unknown is the correct outcome here; naming the card under WSL is a separate problem. Refs #1218 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LtGWCVMPYn6qPWVYiycK74 |
||
|---|---|---|
| .. | ||
| controllers | ||
| data | ||
| exceptions | ||
| jobs | ||
| middleware | ||
| models | ||
| services | ||
| utils | ||
| validators | ||