Skip to content

Commit 95f7861

Browse files
committed
Switch to runtime image
Signed-off-by: Reza Barazesh <rezabarazesh@meta.com>
1 parent f716a15 commit 95f7861

File tree

1 file changed

+21
-2
lines changed

1 file changed

+21
-2
lines changed

docker/Dockerfile

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ ARG PYTHON_VERSION=3.12
2020
# glibc version is baked into the distro, and binaries built with one glibc
2121
# version are not backwards compatible with OSes that use an earlier version.
2222
ARG BUILD_BASE_IMAGE=nvidia/cuda:${CUDA_VERSION}-devel-ubuntu20.04
23-
# TODO: Restore to base image after FlashInfer AOT wheel fixed
24-
ARG FINAL_BASE_IMAGE=nvidia/cuda:${CUDA_VERSION}-devel-ubuntu22.04
23+
# Using runtime image with minimal build tools for JIT compilation (FlashInfer, DeepGEMM, EP kernels)
24+
ARG FINAL_BASE_IMAGE=nvidia/cuda:${CUDA_VERSION}-runtime-ubuntu22.04
2525

2626
# By parameterizing the Deadsnakes repository URL, we allow third-party to use
2727
# their own mirror. When doing so, we don't benefit from the transparent
@@ -328,6 +328,25 @@ RUN echo 'tzdata tzdata/Areas select America' | debconf-set-selections \
328328
&& curl -sS ${GET_PIP_URL} | python${PYTHON_VERSION} \
329329
&& python3 --version && python3 -m pip --version
330330

331+
# Install CUDA development tools and build essentials for runtime JIT compilation
332+
# (FlashInfer, DeepGEMM, EP kernels all require compilation at runtime)
333+
RUN CUDA_VERSION_DASH=$(echo $CUDA_VERSION | cut -d. -f1,2 | tr '.' '-') && \
334+
apt-get update -y && \
335+
apt-get install -y --no-install-recommends \
336+
build-essential \
337+
gcc-10 \
338+
g++-10 \
339+
cuda-nvcc-${CUDA_VERSION_DASH} \
340+
cuda-cudart-dev-${CUDA_VERSION_DASH} \
341+
cuda-nvrtc-dev-${CUDA_VERSION_DASH} \
342+
cuda-nvml-dev-${CUDA_VERSION_DASH} \
343+
libcublas-dev-${CUDA_VERSION_DASH} \
344+
libcusparse-dev-${CUDA_VERSION_DASH} \
345+
libcusolver-dev-${CUDA_VERSION_DASH} && \
346+
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 110 --slave /usr/bin/g++ g++ /usr/bin/g++-10 && \
347+
rm -rf /var/lib/apt/lists/* && \
348+
gcc --version
349+
331350
ARG PIP_INDEX_URL UV_INDEX_URL
332351
ARG PIP_EXTRA_INDEX_URL UV_EXTRA_INDEX_URL
333352
ARG PYTORCH_CUDA_INDEX_BASE_URL

0 commit comments

Comments
 (0)