vllm什么情况会使用triton,部署PD分离的时候,发现进入了triton分支
vLLM会在部分Attention实现中使用Triton(如triton_attn、triton_mla等后端),以提升推理性能。你看到“进入了triton分支”,很可能是vLLM自动选择了Triton相关的Attention后端进行加速,这属于正常现象,并非指NVIDIA Triton Inference Server,而是指triton-lang这个高性能算子编译库。据vllm.v1.attention.backends.triton_attn文档和triton_mla文档,vLLM的部分Attention后端实现就是基于triton-lang。
如果你指的是NVIDIA Triton Inference Server的集成,vLLM也支持作为其后端部署,但这与Attention算子的triton实现是两回事,详见官方Triton集成文档。需要更详细的区分说明吗?
Sources:
怎么关闭triton,避免走入triton分支
怎么关闭pytorch的triton? 是使用环境变量吗?
是的,可以通过环境变量关闭PyTorch的triton支持。根据vLLM PR #10747,设置环境变量TORCH_COMPILE_DISABLE=True即可禁用torch.compile,从而避免triton相关算子的调用。
示例:
export TORCH_COMPILE_DISABLE=True
这样PyTorch不会自动调用triton相关优化。需要更详细的原理或适用场景说明吗?
Sources:
PYTORCH_NO_TRITON 那这个变量是控制什么的