{"record":{"id":"bcb79228700f4cda","repo":"sgl-project/sglang","slug":"cutedsl-mla-backend-is-only-supported-on-blackwell","errorCode":null,"errorMessage":"CuteDSL MLA backend is only supported on Blackwell GPUs (SM100). Please use a different backend.","messagePattern":"CuteDSL MLA backend is only supported on Blackwell GPUs \\(SM100\\)\\. Please use a different backend\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"python/sglang/srt/arg_groups/overrides.py","lineNumber":2541,"sourceCode":"\n\n@register_post_process\ndef _cutedsl_prefill_backend_fill(view: Any) -> dict:\n    \"\"\"Slot pass in the attention-backend compatibility handler: CuteDSL MLA\n    is decode-only, so validate the combination and default the prefill side\n    to trtllm_mla. The trtllm_mha check that follows at the legacy slot reads\n    the resolved value through the view.\"\"\"\n    if not (\n        view.attention_backend == \"cutedsl_mla\"\n        or view.decode_attention_backend == \"cutedsl_mla\"\n        or view.prefill_attention_backend == \"cutedsl_mla\"\n    ):\n        return {}\n    assert (\n        view.prefill_attention_backend != \"cutedsl_mla\"\n    ), \"CuteDSL MLA only supports decoding for now\"\n    if not is_sm100_supported():\n        raise ValueError(\n            \"CuteDSL MLA backend is only supported on Blackwell GPUs (SM100). Please use a different backend.\"\n        )\n    if view.kv_cache_dtype not in [\n        \"fp8_e4m3\",\n        \"bf16\",\n        \"bfloat16\",\n        \"auto\",\n    ]:\n        raise ValueError(\n            \"CuteDSL MLA backend only supports kv-cache-dtype of fp8_e4m3, bf16, or auto.\"\n        )\n    if view.prefill_attention_backend is None:\n        return {\"prefill_attention_backend\": \"trtllm_mla\"}\n    return {}\n\n\n@register_post_process\ndef _attention_backend_fa3_fp8_fallback(view: Any) -> dict:","sourceCodeStart":2523,"sourceCodeEnd":2559,"githubUrl":"https://github.com/sgl-project/sglang/blob/0132848349585cfe6aae51c4941cbae872505f8a/python/sglang/srt/arg_groups/overrides.py#L2523-L2559","documentation":"The CuteDSL MLA prefill backend (cutedsl_mla) uses SM100-specific CUTLASS DSL kernels, so SGLang refuses to start when it is selected on non-SM100 hardware (including SM12x Blackwell variants).","triggerScenarios":"Setting --prefill-attention-backend cutedsl_mla on a GPU without SM100 compute capability (H100, A100, or SM120-class parts).","commonSituations":"Enabling cutedsl_mla for DeepSeek prefill on a mixed cluster where some nodes are Hopper; note this check is stricter than the TRTLLM one (SM100 only, not SM12x).","solutions":["Run on an SM100 (B200/GB200) GPU","Switch prefill backend, e.g. --prefill-attention-backend trtllm_mla or leave default"],"exampleFix":"# before (on H100)\n--prefill-attention-backend cutedsl_mla\n# after\n--prefill-attention-backend trtllm_mla","handlingStrategy":"validation","validationCode":"import torch\nassert torch.cuda.get_device_capability()[0] == 10 and torch.cuda.get_device_capability()[1] == 0, \"cutedsl_mla requires SM100\"","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Note cutedsl_mla is SM100-only, stricter than other Blackwell checks"],"tags":["sglang","cutedsl","mla","prefill","hardware-gpu"],"backgroundTag":"gpu-architecture-not-supported","analyzedSha":"0132848349585cfe6aae51c4941cbae872505f8a","analyzedAt":"2026-08-28T05:10:05.995Z","schemaVersion":2},"datasetVersion":"2026-08-28T06:17:29.519Z"}