From fdd0726ae4f8838018639bb08a7866dec85c96be Mon Sep 17 00:00:00 2001 From: Mengqing Cao Date: Mon, 30 Mar 2026 14:43:16 +0800 Subject: [PATCH] [v0.18.0][Triton] Fix triton-ascend version in Dockerfile (#7766) ### What this PR does / why we need it? Triton-ascend occasionally encounters compilation errors, which is a known issue in triton-ascend 3.2.0. However, we want to use the official version rather than the development version, so we only changed the triton-ascend version in the Dockerfile and added a FAQ to explain this issue. --------- Signed-off-by: MengqingCao --- Dockerfile | 4 ++++ Dockerfile.a3 | 4 ++++ Dockerfile.a3.openEuler | 4 ++++ Dockerfile.openEuler | 4 ++++ docs/source/faqs.md | 11 +++++++++++ 5 files changed, 27 insertions(+) diff --git a/Dockerfile b/Dockerfile index 6132ffa5..1038cbcf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -66,6 +66,10 @@ RUN export PIP_EXTRA_INDEX_URL=https://mirrors.huaweicloud.com/ascend/repos/pypi export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/Ascend/ascend-toolkit/latest/`uname -i`-linux/devlib && \ python3 -m pip install -v -e /vllm-workspace/vllm-ascend/ --extra-index https://download.pytorch.org/whl/cpu/ && \ if [ "$(uname -i)" = "x86_64" ]; then python3 -m pip uninstall -y triton; fi && \ + PYTHON_TAG=$(python3 -c "import sys; print(f'cp{sys.version_info.major}{sys.version_info.minor}')") && \ + ARCH=$(python3 -c "import platform; machine = platform.machine().lower(); arch_map = {'x86_64': 'x86_64', 'amd64': 'x86_64', 'aarch64': 'aarch64', 'arm64': 'aarch64'}; print(arch_map.get(machine, machine))") && \ + TRITON_ASCEND_WHEEL="triton_ascend-3.2.0.dev20260322-${PYTHON_TAG}-${PYTHON_TAG}-manylinux_2_27_${ARCH}.manylinux_2_28_${ARCH}.whl" && \ + python3 -m pip install "https://vllm-ascend.obs.cn-north-4.myhuaweicloud.com/vllm-ascend/${TRITON_ASCEND_WHEEL}" && \ python3 -m pip cache purge # Install clang-15 (for triton-ascend) diff --git a/Dockerfile.a3 b/Dockerfile.a3 index 45fe4f1e..f8312cf7 100644 --- a/Dockerfile.a3 +++ b/Dockerfile.a3 @@ -65,6 +65,10 @@ RUN export PIP_EXTRA_INDEX_URL=https://mirrors.huaweicloud.com/ascend/repos/pypi export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/Ascend/ascend-toolkit/latest/`uname -i`-linux/devlib && \ python3 -m pip install -v -e /vllm-workspace/vllm-ascend/ --extra-index https://download.pytorch.org/whl/cpu/ && \ if [ "$(uname -i)" = "x86_64" ]; then python3 -m pip uninstall -y triton; fi && \ + PYTHON_TAG=$(python3 -c "import sys; print(f'cp{sys.version_info.major}{sys.version_info.minor}')") && \ + ARCH=$(python3 -c "import platform; machine = platform.machine().lower(); arch_map = {'x86_64': 'x86_64', 'amd64': 'x86_64', 'aarch64': 'aarch64', 'arm64': 'aarch64'}; print(arch_map.get(machine, machine))") && \ + TRITON_ASCEND_WHEEL="triton_ascend-3.2.0.dev20260322-${PYTHON_TAG}-${PYTHON_TAG}-manylinux_2_27_${ARCH}.manylinux_2_28_${ARCH}.whl" && \ + python3 -m pip install "https://vllm-ascend.obs.cn-north-4.myhuaweicloud.com/vllm-ascend/${TRITON_ASCEND_WHEEL}" && \ python3 -m pip cache purge # Install clang-15 (for triton-ascend) diff --git a/Dockerfile.a3.openEuler b/Dockerfile.a3.openEuler index fe30bdcc..d7aa2973 100644 --- a/Dockerfile.a3.openEuler +++ b/Dockerfile.a3.openEuler @@ -66,6 +66,10 @@ RUN export PIP_EXTRA_INDEX_URL=https://mirrors.huaweicloud.com/ascend/repos/pypi export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/include/c++/12:/usr/include/c++/12/`uname -i`-openEuler-linux && \ python3 -m pip install -v -e /vllm-workspace/vllm-ascend/ --extra-index https://download.pytorch.org/whl/cpu/ && \ if [ "$(uname -i)" = "x86_64" ]; then python3 -m pip uninstall -y triton; fi && \ + PYTHON_TAG=$(python3 -c "import sys; print(f'cp{sys.version_info.major}{sys.version_info.minor}')") && \ + ARCH=$(python3 -c "import platform; machine = platform.machine().lower(); arch_map = {'x86_64': 'x86_64', 'amd64': 'x86_64', 'aarch64': 'aarch64', 'arm64': 'aarch64'}; print(arch_map.get(machine, machine))") && \ + TRITON_ASCEND_WHEEL="triton_ascend-3.2.0.dev20260322-${PYTHON_TAG}-${PYTHON_TAG}-manylinux_2_27_${ARCH}.manylinux_2_28_${ARCH}.whl" && \ + python3 -m pip install "https://vllm-ascend.obs.cn-north-4.myhuaweicloud.com/vllm-ascend/${TRITON_ASCEND_WHEEL}" && \ python3 -m pip cache purge # Install clang (for triton-ascend) diff --git a/Dockerfile.openEuler b/Dockerfile.openEuler index c9608e19..660e53a8 100644 --- a/Dockerfile.openEuler +++ b/Dockerfile.openEuler @@ -66,6 +66,10 @@ RUN export PIP_EXTRA_INDEX_URL=https://mirrors.huaweicloud.com/ascend/repos/pypi export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/include/c++/12:/usr/include/c++/12/`uname -i`-openEuler-linux && \ python3 -m pip install -v -e /vllm-workspace/vllm-ascend/ --extra-index https://download.pytorch.org/whl/cpu/ && \ if [ "$(uname -i)" = "x86_64" ]; then python3 -m pip uninstall -y triton; fi && \ + PYTHON_TAG=$(python3 -c "import sys; print(f'cp{sys.version_info.major}{sys.version_info.minor}')") && \ + ARCH=$(python3 -c "import platform; machine = platform.machine().lower(); arch_map = {'x86_64': 'x86_64', 'amd64': 'x86_64', 'aarch64': 'aarch64', 'arm64': 'aarch64'}; print(arch_map.get(machine, machine))") && \ + TRITON_ASCEND_WHEEL="triton_ascend-3.2.0.dev20260322-${PYTHON_TAG}-${PYTHON_TAG}-manylinux_2_27_${ARCH}.manylinux_2_28_${ARCH}.whl" && \ + python3 -m pip install "https://vllm-ascend.obs.cn-north-4.myhuaweicloud.com/vllm-ascend/${TRITON_ASCEND_WHEEL}" && \ python3 -m pip cache purge # Install clang (for triton-ascend) diff --git a/docs/source/faqs.md b/docs/source/faqs.md index 8900b514..e5a98be3 100644 --- a/docs/source/faqs.md +++ b/docs/source/faqs.md @@ -289,3 +289,14 @@ export SOC_VERSION="ascend310p1" # Atlas A5 (Ascend 950 series) export SOC_VERSION="" ``` + +### 24. Compilation error occasionally encounters with triton-ascend + +As shown in [#7782](https://github.com/vllm-project/vllm-ascend/issues/7782), triton-ascend occasionally encounters compilation errors, which is a known issue in triton-ascend 3.2.0. To avoid this issue, please use the official docker images or install the specific triton-ascend version as following: + +```bash +PYTHON_TAG=$(python3 -c "import sys; print(f'cp{sys.version_info.major}{sys.version_info.minor}')") && \ +ARCH=$(python3 -c "import platform; machine = platform.machine().lower(); arch_map = {'x86_64': 'x86_64', 'amd64': 'x86_64', 'aarch64': 'aarch64', 'arm64': 'aarch64'}; print(arch_map.get(machine, machine))") && \ +TRITON_ASCEND_WHEEL="triton_ascend-3.2.0.dev20260322-${PYTHON_TAG}-${PYTHON_TAG}-manylinux_2_27_${ARCH}.manylinux_2_28_${ARCH}.whl" && \ +python3 -m pip install "https://vllm-ascend.obs.cn-north-4.myhuaweicloud.com/vllm-ascend/${TRITON_ASCEND_WHEEL}" +```