@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / c6f36cfa26
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, 23:45 UTC

[Bugfix] DeepGEMM is not enabled on B200 due to `_lazy_init()` (#21472)

Signed-off-by: Clayton Coleman <smarterclayton@gmail.com> Co-authored-by: mgoin <mgoin64@gmail.com>

Clayton Coleman committed Jul 28, 2025 at 16:51 UTC c6f36cfa2642486ba2c2e5d62be0467fe1c036f9
1 file changed +8 -4
vllm/utils/deep_gemm.py
+8 -4
@@ -13,7 +13,8 @@ from typing import Any, Callable, NoReturn
13 import torch
14
15 import vllm.envs as envs
16 -from vllm.utils import cuda_get_device_properties, has_deep_gemm
16 +from vllm.platforms import current_platform
17 +from vllm.utils import has_deep_gemm
18
19
20 @functools.cache
@@ -21,12 +22,15 @@ def is_blackwell_deep_gemm_used() -> bool:
22 """Return ``True`` if vLLM is configured to use DeepGEMM on a
23 Blackwell-class GPU.
24 """
25 + if not (envs.VLLM_USE_DEEP_GEMM and has_deep_gemm()):
26 + return False
27
25 - if not (envs.VLLM_USE_DEEP_GEMM and has_deep_gemm()
26 - and _per_block_cast_impl is not None):
28 + _lazy_init()
29 + if _per_block_cast_impl is None:
30 return False
31
29 - return cuda_get_device_properties(0, ("major", ))[0] == 10
32 + return (current_platform.is_cuda()
33 + and current_platform.is_device_capability(100))
34
35
36 def _missing(*_: Any, **__: Any) -> NoReturn: