Objective
Add an optional absolute GPU-memory budget in GiB for unified-memory systems, alongside gpu_memory_utilization.
Target hardware
- NVIDIA DGX Spark / GB10 / SM121 unified memory
- AMD Strix Halo / gfx1151 unified memory
Motivation
A fraction of device-visible memory is unstable when CPU and GPU share one moving memory pool. A fixed GiB ceiling may make vLLM allocation easier to bound under host-memory pressure; this issue must validate whether it improves stability.
The fork currently has fractional gpu_memory_utilization and absolute kv_cache_memory_bytes, but no whole-engine absolute budget. kv_cache_memory_bytes is not equivalent because it only overrides KV-cache sizing; graph reservations, profiling, validation, and OOM diagnostics still reason from the fractional engine budget.
Reference
Proposed work
- Add a nullable absolute-GiB field and CLI argument using vLLM config conventions.
- Define precedence and mutual-exclusion behavior relative to
gpu_memory_utilization.
- Thread the effective budget through memory profiling, graph-capture estimates, KV allocation, usage reporting, validation, and OOM errors.
- Keep behavior unchanged when the option is unset.
- Cover CUDA and ROCm integrated-GPU paths without platform-specific branches in generic config code.
Acceptance criteria
- Config and CLI tests cover unset, valid, invalid, and conflicting values.
- Profiling and allocation use the same effective byte budget.
- Error messages report the active absolute budget.
- On a documented model/config, perturb host free memory across a recorded range and report process RSS, device-visible usage, OOM outcome, and peak overshoot above the requested budget.
- No throughput or capacity regression when the feature is unset.
Objective
Add an optional absolute GPU-memory budget in GiB for unified-memory systems, alongside
gpu_memory_utilization.Target hardware
Motivation
A fraction of device-visible memory is unstable when CPU and GPU share one moving memory pool. A fixed GiB ceiling may make vLLM allocation easier to bound under host-memory pressure; this issue must validate whether it improves stability.
The fork currently has fractional
gpu_memory_utilizationand absolutekv_cache_memory_bytes, but no whole-engine absolute budget.kv_cache_memory_bytesis not equivalent because it only overrides KV-cache sizing; graph reservations, profiling, validation, and OOM diagnostics still reason from the fractional engine budget.Reference
gpu_memory_utilization_gbcontrol as of 2026-07-29.Proposed work
gpu_memory_utilization.Acceptance criteria