Fix Flashinfer Backend for SM120 Usage (#12325)

This commit is contained in:
weiliang
2025-10-29 11:51:55 -07:00
committed by GitHub
parent e39628fd07
commit a18161875c
2 changed files with 7 additions and 5 deletions
@@ -26,8 +26,8 @@ from sglang.srt.model_executor.forward_batch_info import ForwardBatch, ForwardMo
from sglang.srt.speculative.spec_info import SpecInput from sglang.srt.speculative.spec_info import SpecInput
from sglang.srt.utils import ( from sglang.srt.utils import (
get_int_env_var, get_int_env_var,
is_blackwell_supported,
is_flashinfer_available, is_flashinfer_available,
is_sm100_supported,
next_power_of_2, next_power_of_2,
) )
@@ -229,7 +229,7 @@ class FlashInferAttnBackend(AttentionBackend):
] ]
fmha_backend = "auto" fmha_backend = "auto"
if is_blackwell_supported(): if is_sm100_supported():
# Disable CUTLASS backend when piecewise cuda graph is enabled # Disable CUTLASS backend when piecewise cuda graph is enabled
# due to TMA descriptor initialization issues on B200 # due to TMA descriptor initialization issues on B200
if model_runner.server_args.enable_piecewise_cuda_graph: if model_runner.server_args.enable_piecewise_cuda_graph:
@@ -25,8 +25,8 @@ from sglang.srt.model_executor.forward_batch_info import ForwardBatch, ForwardMo
from sglang.srt.server_args import get_global_server_args from sglang.srt.server_args import get_global_server_args
from sglang.srt.speculative.spec_info import SpecInput from sglang.srt.speculative.spec_info import SpecInput
from sglang.srt.utils import ( from sglang.srt.utils import (
is_blackwell_supported,
is_flashinfer_available, is_flashinfer_available,
is_sm100_supported,
next_power_of_2, next_power_of_2,
) )
@@ -242,9 +242,11 @@ class FlashInferMLAAttnBackend(AttentionBackend):
else: else:
self.q_indptr_decode = q_indptr_decode_buf self.q_indptr_decode = q_indptr_decode_buf
self.fmha_backend = "auto" if is_sm100_supported():
if is_blackwell_supported():
self.fmha_backend = "cutlass" self.fmha_backend = "cutlass"
else:
self.fmha_backend = "auto"
self.prefill_wrapper_ragged = BatchPrefillWithRaggedKVCacheWrapper( self.prefill_wrapper_ragged = BatchPrefillWithRaggedKVCacheWrapper(
self.workspace_buffer, "NHD", backend=self.fmha_backend self.workspace_buffer, "NHD", backend=self.fmha_backend
) )