A high-throughput and memory-efficient inference and serving engine for LLMs
Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git
Synced Nov 14, 05:30 UTC
ci: Add CUDA + arm64 release builds (#21201)
Signed-off-by: Eli Uriegas <eliuriegas@meta.com>
Eli Uriegas committed
Aug 15, 2025 at 16:16 UTC
76144adf765af39a0702a542b1b99bf3a2ad4e8f
2 files changed
+18
-15
.buildkite/release-pipeline.yaml
+16
@@ -1,4 +1,20 @@
1
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
18
- label: "Build wheel - CUDA 12.8"
19
id: build-wheel-cuda-12-8
20
agents:
docker/Dockerfile
+2
-15
@@ -139,21 +139,6 @@ RUN ldconfig /usr/local/cuda-$(echo $CUDA_VERSION | cut -d. -f1,2)/compat/
139
WORKDIR /workspace
140
141
# 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
-
142
COPY requirements/common.txt requirements/common.txt
143
COPY requirements/cuda.txt requirements/cuda.txt
144
RUN --mount=type=cache,target=/root/.cache/uv \
@@ -234,6 +219,8 @@ RUN --mount=type=cache,target=/root/.cache/uv \
219
&& sccache --show-stats; \
220
fi
221
222
+ARG vllm_target_device="cuda"
223
+ENV VLLM_TARGET_DEVICE=${vllm_target_device}
224
ENV CCACHE_DIR=/root/.cache/ccache
225
RUN --mount=type=cache,target=/root/.cache/ccache \
226
--mount=type=cache,target=/root/.cache/uv \