[CPU] Add device-memory-utilization CLI alias (#56547)

Signed-off-by: louie-tsai <louie.tsai@intel.com> Signed-off-by: Louie Tsai <louie.tsai@intel.com> Co-authored-by: Harry Mellor <19981378+hmellor@users.noreply.github.com>

Louie Tsai committed Sep 22, 2026 at 02:37 UTC 6dc34b6334fe9439a46748a0df290bc785dd69df
3 files changed +44 -3
tests/engine/test_arg_utils.py
+27 -1
@@ -9,7 +9,13 @@ from typing import Annotated, Literal
9 import pytest
10 from pydantic import Field
11
12 -from vllm.config import AttentionConfig, CompilationConfig, ModelConfig, config
12 +from vllm.config import (
13 + AttentionConfig,
14 + CacheConfig,
15 + CompilationConfig,
16 + ModelConfig,
17 + config,
18 +)
19 from vllm.engine.arg_utils import (
20 EngineArgs,
21 _expand_json_human_readable_numbers,
@@ -86,6 +92,26 @@ def test_watermark_config_cli():
92 assert config.deduplicate_contexts_max_history == 32
93
94
95 +@pytest.mark.parametrize(
96 + "option",
97 + ["--gpu-memory-utilization", "--device-memory-utilization"],
98 +)
99 +def test_memory_utilization_cli_aliases(option):
100 + parser = EngineArgs.add_cli_args(FlexibleArgumentParser())
101 + args = EngineArgs.from_cli_args(parser.parse_args([option, "0.8"]))
102 +
103 + assert args.gpu_memory_utilization == 0.8
104 +
105 +
106 +def test_device_memory_utilization_property():
107 + config = CacheConfig(gpu_memory_utilization=0.8)
108 +
109 + assert config.device_memory_utilization == 0.8
110 +
111 + config.device_memory_utilization = 0.7
112 + assert config.gpu_memory_utilization == 0.7
113 +
114 +
115 @pytest.mark.parametrize(
116 "options",
117 [
vllm/config/cache.py
+13 -1
@@ -107,7 +107,19 @@ class CacheConfig:
107 per-instance limit, and only applies to the current vLLM instance. It does
108 not matter if you have another vLLM instance running on the same GPU. For
109 example, if you have two vLLM instances running on the same GPU, you can
110 - set the GPU memory utilization to 0.5 for each instance."""
110 + set the GPU memory utilization to 0.5 for each instance. On non-GPU
111 + installs, this value controls the corresponding device memory utilization.
112 + """
113 +
114 + @property
115 + def device_memory_utilization(self) -> float:
116 + """Device-neutral alias for ``gpu_memory_utilization``."""
117 + return self.gpu_memory_utilization
118 +
119 + @device_memory_utilization.setter
120 + def device_memory_utilization(self, value: float) -> None:
121 + self.gpu_memory_utilization = value
122 +
123 cache_dtype: CacheDType = "auto"
124 """Data type for kv cache storage. If "auto", will use model data type.
125 CUDA 11.8+ supports fp8 (=fp8_e4m3) and fp8_e5m2. ROCm (AMD GPU) supports
vllm/engine/arg_utils.py
+4 -1
@@ -1298,7 +1298,10 @@ class EngineArgs:
1298 )
1299 cache_group.add_argument("--block-size", **cache_kwargs["block_size"])
1300 cache_group.add_argument(
1301 - "--gpu-memory-utilization", **cache_kwargs["gpu_memory_utilization"]
1301 + "--gpu-memory-utilization",
1302 + "--device-memory-utilization",
1303 + dest="gpu_memory_utilization",
1304 + **cache_kwargs["gpu_memory_utilization"],
1305 )
1306 cache_group.add_argument(
1307 "--kv-cache-memory-bytes", **cache_kwargs["kv_cache_memory_bytes"]