@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / 79899b63f6
Fork 0

A high-throughput and memory-efficient inference and serving engine for LLMs

Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git

Synced Nov 14, 05:30 UTC

[Bugfix] Added more env vars to hash (#22449)

Signed-off-by: Julien Lin <jullin@nvidia.com>

nvjullin committed Aug 16, 2025 at 04:08 UTC 79899b63f6d4517e002cc53eb1dcd47cd9e371ea
1 file changed +36 -10
vllm/envs.py
+36 -10
@@ -1199,14 +1199,6 @@ def compute_hash() -> str:
1199 affect the choice of different kernels or attention backends should
1200 also be included in the factors list.
1201 """
1202 - factors: list[Any] = []
1203 -
1204 - # summarize environment variables
1205 - def factorize(name: str):
1206 - if __getattr__(name):
1207 - factors.append(__getattr__(name))
1208 - else:
1209 - factors.append("None")
1202
1203 # The values of envs may affects the computation graph.
1204 # TODO(DefTruth): hash all environment variables?
@@ -1221,11 +1213,45 @@ def compute_hash() -> str:
1213 "VLLM_DP_SIZE",
1214 "VLLM_USE_STANDALONE_COMPILE",
1215 "VLLM_FUSED_MOE_CHUNK_SIZE",
1216 + "VLLM_FLASHINFER_MOE_BACKEND",
1217 + "VLLM_V1_USE_PREFILL_DECODE_ATTENTION",
1218 + "VLLM_USE_AITER_UNIFIED_ATTENTION",
1219 + "VLLM_ATTENTION_BACKEND",
1220 + "VLLM_USE_FLASHINFER_SAMPLER",
1221 + "VLLM_FLASHINFER_FORCE_TENSOR_CORES",
1222 + "VLLM_DISABLED_KERNELS",
1223 + "VLLM_USE_DEEP_GEMM",
1224 "VLLM_USE_TRTLLM_FP4_GEMM",
1225 + "VLLM_USE_FLASHINFER_MOE_FP8",
1226 + "VLLM_USE_FLASHINFER_MOE_FP4",
1227 + "VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8",
1228 + "VLLM_USE_FLASHINFER_MOE_MXFP4_BF16",
1229 + "VLLM_USE_CUDNN_PREFILL",
1230 + "VLLM_USE_TRTLLM_ATTENTION",
1231 + "VLLM_ROCM_USE_AITER",
1232 + "VLLM_ROCM_USE_AITER_PAGED_ATTN",
1233 + "VLLM_ROCM_USE_AITER_LINEAR",
1234 + "VLLM_ROCM_USE_AITER_MOE",
1235 + "VLLM_ROCM_USE_AITER_RMSNORM",
1236 + "VLLM_ROCM_USE_AITER_MLA",
1237 + "VLLM_ROCM_USE_AITER_MHA",
1238 + "VLLM_ROCM_USE_SKINNY_GEMM",
1239 + "VLLM_ROCM_FP8_PADDING",
1240 + "VLLM_ROCM_MOE_PADDING",
1241 + "VLLM_ROCM_CUSTOM_PAGED_ATTN",
1242 + "VLLM_ROCM_QUICK_REDUCE_QUANTIZATION",
1243 + "VLLM_ROCM_QUICK_REDUCE_CAST_BF16_TO_FP16",
1244 + "VLLM_ROCM_QUICK_REDUCE_MAX_SIZE_BYTES_MB",
1245 ]
1246 for key in environment_variables_to_hash:
1227 - if key in environment_variables:
1228 - factorize(key)
1247 + # if this goes out of sync with environment_variables,
1248 + # it's not a user error, it's a bug
1249 + assert key in environment_variables, \
1250 + "Please update environment_variables_to_hash in envs.py"
1251 +
1252 + factors = [
1253 + environment_variables[key]() for key in environment_variables_to_hash
1254 + ]
1255
1256 hash_str = hashlib.md5(str(factors).encode(),
1257 usedforsecurity=False).hexdigest()