Skip to content

Commit a0f98be

Browse files
seemethereamd-xiaoyu12
authored andcommitted
ci: Add CUDA + arm64 release builds (vllm-project#21201)
Signed-off-by: Eli Uriegas <[email protected]> Signed-off-by: Xiao Yu <[email protected]>
1 parent caa7782 commit a0f98be

File tree

2 files changed

+18
-15
lines changed

2 files changed

+18
-15
lines changed

.buildkite/release-pipeline.yaml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,20 @@
11
steps:
2+
# aarch64 + CUDA builds
3+
- label: "Build arm64 wheel - CUDA 12.8"
4+
id: build-wheel-arm64-cuda-12-8
5+
agents:
6+
queue: arm64_cpu_queue_postmerge
7+
commands:
8+
# #NOTE: torch_cuda_arch_list is derived from upstream PyTorch build files here:
9+
# https://github.com/pytorch/pytorch/blob/main/.ci/aarch64_linux/aarch64_ci_build.sh#L7
10+
- "DOCKER_BUILDKIT=1 docker build --build-arg max_jobs=16 --build-arg USE_SCCACHE=1 --build-arg GIT_REPO_CHECK=1 --build-arg CUDA_VERSION=12.8.1 --build-arg torch_cuda_arch_list='8.7 9.0 10.0+PTX' --tag vllm-ci:build-image --target build --progress plain -f docker/Dockerfile ."
11+
- "mkdir artifacts"
12+
- "docker run --rm -v $(pwd)/artifacts:/artifacts_host vllm-ci:build-image bash -c 'cp -r dist /artifacts_host && chmod -R a+rw /artifacts_host'"
13+
- "bash .buildkite/scripts/upload-wheels.sh"
14+
env:
15+
DOCKER_BUILDKIT: "1"
16+
17+
# x86 + CUDA builds
218
- label: "Build wheel - CUDA 12.8"
319
id: build-wheel-cuda-12-8
420
agents:

docker/Dockerfile

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -139,21 +139,6 @@ RUN ldconfig /usr/local/cuda-$(echo $CUDA_VERSION | cut -d. -f1,2)/compat/
139139
WORKDIR /workspace
140140

141141
# install build and runtime dependencies
142-
143-
# arm64 (GH200) build follows the practice of "use existing pytorch" build,
144-
# we need to install torch and torchvision from the nightly builds first,
145-
# pytorch will not appear as a vLLM dependency in all of the following steps
146-
# after this step
147-
RUN --mount=type=cache,target=/root/.cache/uv \
148-
if [ "$TARGETPLATFORM" = "linux/arm64" ]; then \
149-
uv pip install --system \
150-
--index-url ${PYTORCH_CUDA_NIGHTLY_INDEX_BASE_URL}/cu$(echo $CUDA_VERSION | cut -d. -f1,2 | tr -d '.') \
151-
"torch==2.8.0.dev20250318+cu128" "torchvision==0.22.0.dev20250319"; \
152-
uv pip install --system \
153-
--index-url ${PYTORCH_CUDA_NIGHTLY_INDEX_BASE_URL}/cu$(echo $CUDA_VERSION | cut -d. -f1,2 | tr -d '.') \
154-
--pre pytorch_triton==3.3.0+gitab727c40; \
155-
fi
156-
157142
COPY requirements/common.txt requirements/common.txt
158143
COPY requirements/cuda.txt requirements/cuda.txt
159144
RUN --mount=type=cache,target=/root/.cache/uv \
@@ -234,6 +219,8 @@ RUN --mount=type=cache,target=/root/.cache/uv \
234219
&& sccache --show-stats; \
235220
fi
236221

222+
ARG vllm_target_device="cuda"
223+
ENV VLLM_TARGET_DEVICE=${vllm_target_device}
237224
ENV CCACHE_DIR=/root/.cache/ccache
238225
RUN --mount=type=cache,target=/root/.cache/ccache \
239226
--mount=type=cache,target=/root/.cache/uv \

0 commit comments

Comments
 (0)