Issues / #1898

#1898 Windows + Radeon AI PRO R9700 (gfx1201): first request always stalls in the first verify window ("reading the prompt (verify windows), from token 0"), 503 after 60 s

open · @newosj9050 · 3 comentários · No GitHub

Setup & installServer & APIAMD / HIPModels & quantsWindows

Descrição

## Setup
- Strata engine 0.1.41 (START-HERE.bat installer, ready-made engine zip)
- Windows 11 Pro 10.0.26300, AMD driver 32.0.31036.15
- Radeon AI PRO R9700 32 GB (gfx1201). `strata-device --list-devices`: `device 0: AMD Radeon AI PRO R9700, arch gfx1201, wave32`. `--selftest` passes (plan FITS)
- 61 GB RAM, Qwen3.8-Flash-Next IQ2_XS native pack, `--mmap-experts`
- Args: `--spec 4 --spec-min-p 0.5 --mtp ... --prefill 512 --kv int8 --expert-cache auto --max-context 8192 --adapt-every 0 --pcie-frac 0 --vram-reserve-mib 3072 --no-prefill-borrow`

## What happens
The server starts and `/health` reports `loaded: true`. Every first chat request stalls for 60 s, the watchdog (#29) stops the engine, and the client gets 503. About 12 times in a row, always at the same place:

```
strata verify: captured the 6-token window (upload no error, sync no error)
strata serve: no progress for 60 s during a request (reading the prompt (verify windows), from token 0) ...
  stall report: 0 layers served since the last finished step
  expert pool: 7 of 7 workers parked, 7 sleeping; host idle for 70866 ms
  verify window (last window, not the current stage): 6 tokens at position 0, host at layer step 1; the GPU rang 1; flags: served 0, plan (A) 0, copies (B) 0
strata: released the verify window's GPU waits (#267): the GPU finished in 2 ms
```

After the waits are released the GPU finishes in 2 ms (56 ms in another run), so the GPU itself is not hung. It looks like the host and the GPU do not see each other's flag writes in the first verify window. This resembles #697 (Windows, gfx1201, `GPU rang 0`, fixed by a fence after the doorbell store in 0.1.40), but here the GPU rang once (`rang 1`), the engine is 0.1.41, and the stall is in the verify-window path.

## What I tried (none helped; the stall is identical each time)
- `--no-prefill-borrow`
- `GPU_PINNED_MIN_XFER_SIZE=1048576` in the server `env` (#920)
- no `--mtp`, `--spec 2` (stall report: `4 tokens at position 0`, `GPU rang 1`, same)
- both of the above together
- different `--expert-cache` and reserve sizes

`--spec` cannot be removed: the native pack requires `--spec >= 2`.

## Question
Is the first verify window known to need a fence / volatile store on gfx1201 Windows (see the `STRATA_DOORBELL_STORE` note in #1705)? Is there an env switch to run the first window the old way? As far as I can tell this is the first R9700 + Windows report. I have thread-stack dumps (`strata-stall-*.dmp`, about 490 KB each) and full logs, and I am happy to test builds.

Related: #697 #267 #29 #613 #579

No site

Links install, modelos, releases.