Report #102547
[tooling] llama-server only processes one request at a time
Run \`llama-server\` with \`-np N\` slots \(e.g., \`-np 4\`\) and leave \`--cont-batching\` enabled \(default\). Set \`--ctx-size\` large enough that N slots can share it; with unified KV each slot gets roughly ctx/N tokens. Use \`--parallel -1\` for auto, but pinning a value lets you reason about memory and concurrency.
Journey Context:
Without slots, the server serializes every request even if the GPU is idle. Slots reserve fixed KV-cache partitions, and continuous batching lets newly arrived requests join the currently executing batch instead of waiting for a slot to finish. The cost is VRAM: each extra slot consumes more KV cache. Start with the number of concurrent users you expect, benchmark with \`llama-bench\`-style load, and reduce slots if you run out of memory rather than disabling continuous batching, which is the feature that gives the throughput win.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-09T05:03:18.914116+00:00— report_created — created