본문 바로가기

LLM

SGLang B300 GPU (SM103)에서 Qwen3.5 서빙 — Attention Backend

반응형

B300 GPU에서 SGLang으로 Qwen3.5를 서빙하면서 어텐션 백엔드 설정을 이것저것 해봤습니다.


환경

GPU: NVIDIA B300 (SM103, Blackwell 계열)
모델: Qwen3.5-4B (head_dim=256)
프레임워크: SGLang (CUDA 12.9+)

1차 시도 — FA4 + trtllm_mha

--prefill-attention-backend fa4 \
--attention-backend trtllm_mha

에러:

AssertionError: (head_dim, head_dim_v)=(256, 256) is not supported on SM100/SM110.
head_dim must be between 8 and 128

FA4는 head_dim 128까지만 지원해요. Qwen3.5는 256이라 안 됩니다.


2차 시도 — FA3 + trtllm_mha

--prefill-attention-backend fa3 \
--attention-backend trtllm_mha

에러:

AssertionError: FlashAttention v3 Backend requires SM>=80 and SM<=90.
Please use `--attention-backend flashinfer`.

FA3는 SM90(H100)까지만 지원해요. SM103은 안 됩니다.


정리 — 왜 이렇게 되나

FA4: SM103 지원하지만 head_dim 128까지만
FA3: head_dim 256 지원하지만 SM90까지만

Qwen3.5 head_dim=256 + SM103:
둘 다 조건 충족 못함

실제로 동작하는 백엔드

# triton (가장 범용, 원래 동작하던 것)
--attention-backend triton

# flashinfer (에러 메시지가 직접 추천)
--attention-backend flashinfer

둘 다 head_dim 256, SM103에서 정상 동작해요.


모델별 B300 최적 백엔드

head_dim 128 이하 (Llama 등):
→ --prefill-attention-backend fa4
   --attention-backend trtllm_mha

head_dim 256 (Qwen3.5 등):
→ --attention-backend triton 또는 flashinfer
   (FA4가 head_dim 256 지원 추가 전까지)

DeepSeek MLA:
→ --prefill-attention-backend fa4
   --attention-backend trtllm_mla
   --moe-runner-backend flashinfer_trtllm

 


 

반응형