Skip to content

Commit 22b2530

Browse files
[UX] Pre-build a EFA version of the default Docker image #2793
1 parent e412313 commit 22b2530

File tree

3 files changed

+31
-32
lines changed

3 files changed

+31
-32
lines changed

docker/base/Dockerfile

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
ARG FLAVOR
22
FROM nvidia/cuda:12.1.1-${FLAVOR}-ubuntu20.04
33

4-
# UV & Python
5-
64
ARG PYTHON
75
ARG _UV_HOME="/opt/uv"
86

@@ -29,32 +27,3 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
2927

3028
RUN curl -LsSf https://astral.sh/uv/install.sh | INSTALLER_NO_MODIFY_PATH=1 sh && \
3129
uv python install --preview --default
32-
33-
# NCCL & NCCL tests
34-
35-
ARG NCCL_VERSION=2.26.2-1
36-
ARG FLAVOR
37-
38-
ENV FLAVOR=${FLAVOR}
39-
ENV NCCL_HOME=/usr/local
40-
ENV CUDA_PATH=/usr/local/cuda
41-
ENV OPEN_MPI_PATH=/usr/lib/x86_64-linux-gnu/openmpi
42-
ENV LD_LIBRARY_PATH="${OPEN_MPI_PATH}/lib:${NCCL_HOME}/lib:${LD_LIBRARY_PATH}"
43-
ENV PATH="${OPEN_MPI_PATH}/bin:${HOME}/nccl-tests/build:${PATH}"
44-
45-
RUN if [ "${FLAVOR}" = "devel" ]; then \
46-
apt-get install -y --no-install-recommends \
47-
libopenmpi-dev \
48-
&& cd $HOME \
49-
&& git clone https://github.com/NVIDIA/nccl.git -b v${NCCL_VERSION} \
50-
&& cd nccl \
51-
&& make -j$(nproc) src.build BUILDDIR=${NCCL_HOME} \
52-
&& cd $HOME \
53-
&& git clone https://github.com/NVIDIA/nccl-tests \
54-
&& cd nccl-tests \
55-
&& make -j$(nproc) \
56-
MPI=1 \
57-
MPI_HOME=${OPEN_MPI_PATH} \
58-
CUDA_HOME=${CUDA_PATH} \
59-
NCCL_HOME=${NCCL_HOME}; \
60-
fi

docker/base/devel/Dockerfile

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# syntax = edrevo/dockerfile-plus
2+
3+
INCLUDE+ base/Dockerfile
4+
5+
# NCCL & NCCL tests
6+
7+
ARG NCCL_VERSION=2.26.2-1
8+
9+
ENV NCCL_HOME=/usr/local
10+
ENV CUDA_PATH=/usr/local/cuda
11+
ENV OPEN_MPI_PATH=/usr/lib/x86_64-linux-gnu/openmpi
12+
ENV LD_LIBRARY_PATH="${OPEN_MPI_PATH}/lib:${NCCL_HOME}/lib:${LD_LIBRARY_PATH}"
13+
ENV PATH="${OPEN_MPI_PATH}/bin:${HOME}/nccl-tests/build:${PATH}"
14+
15+
RUN apt-get install -y --no-install-recommends \
16+
libopenmpi-dev \
17+
&& cd $HOME \
18+
&& git clone https://github.com/NVIDIA/nccl.git -b v${NCCL_VERSION} \
19+
&& cd nccl \
20+
&& make -j$(nproc) src.build BUILDDIR=${NCCL_HOME} \
21+
&& cd $HOME \
22+
&& git clone https://github.com/NVIDIA/nccl-tests \
23+
&& cd nccl-tests \
24+
&& make -j$(nproc) \
25+
MPI=1 \
26+
MPI_HOME=${OPEN_MPI_PATH} \
27+
CUDA_HOME=${CUDA_PATH} \
28+
NCCL_HOME=${NCCL_HOME}

docker/base/efa/Dockerfile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
FROM nvidia/cuda:12.1.1-devel-ubuntu20.04
1+
# syntax = edrevo/dockerfile-plus
2+
3+
INCLUDE+ base/Dockerfile
24

35
ENV NCCL_HOME=/usr/local
46
ENV CUDA_PATH=/usr/local/cuda

0 commit comments

Comments
 (0)