|
| 1 | +FROM nvidia/cuda:12.2.0-devel-ubuntu22.04 |
| 2 | + |
| 3 | +# Making a change to show how the new tag works |
| 4 | +RUN apt-get update \ |
| 5 | + && DEBIAN_FRONTEND=noninteractive apt-get -y install wget git cmake python-is-python3 ninja-build build-essential libboost-dev swig libeigen3-dev libglfw3-dev libglm-dev libglew-dev freeglut3-dev libirrlicht-dev libxxf86vm-dev python3 python3-dev libhdf5-dev libnvidia-gl-510 make file libnuma-dev gdb intel-mkl |
| 6 | + |
| 7 | +# Install OpenMPI the way that it is installed on Quest |
| 8 | +# Start with UCX |
| 9 | + |
| 10 | +RUN wget https://github.com/openucx/ucx/releases/download/v1.10.0/ucx-1.10.0.tar.gz |
| 11 | +RUN tar xzf ucx-1.10.0.tar.gz |
| 12 | +RUN mkdir -p /ucx-1.10.0/build |
| 13 | +WORKDIR /ucx-1.10.0/build |
| 14 | +RUN ../contrib/configure-release --prefix=/usr/local/ucx-1.10.0 |
| 15 | +RUN make -j4 install |
| 16 | + |
| 17 | +RUN echo "Installing Open MPI" |
| 18 | +ENV OMPI_DIR=/opt/ompi |
| 19 | +ENV OMPI_VERSION=4.1.4 |
| 20 | +ENV OMPI_URL="https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-$OMPI_VERSION.tar.bz2" |
| 21 | +RUN mkdir -p /tmp/ompi |
| 22 | +RUN mkdir -p /opt |
| 23 | + |
| 24 | +# Download |
| 25 | +RUN cd /tmp/ompi && wget -O openmpi-$OMPI_VERSION.tar.bz2 $OMPI_URL && tar -xjf openmpi-$OMPI_VERSION.tar.bz2 |
| 26 | +# Compile and install |
| 27 | +RUN cd /tmp/ompi/openmpi-$OMPI_VERSION && ./configure --prefix=$OMPI_DIR --enable-mca-no-build=btl-uct --with-ucx=/usr/local/ucx-1.10.0 && make -j4 install |
| 28 | + |
| 29 | +# Go back to root |
| 30 | +WORKDIR / |
| 31 | + |
| 32 | +# Set env variables so we can compile our application |
| 33 | +ENV PATH=$OMPI_DIR/bin:$PATH |
| 34 | +ENV LD_LIBRARY_PATH=$OMPI_DIR/lib:$LD_LIBRARY_PATH |
| 35 | +RUN ldconfig |
| 36 | +RUN wget https://bitbucket.org/blaze-lib/blaze/downloads/blaze-3.8.tar.gz |
| 37 | +RUN tar -xf blaze-3.8.tar.gz |
| 38 | +RUN cp -r blaze-3.8/blaze /usr/local/include |
| 39 | +#RUN git clone --depth 1 https://github.com/Concrete-Chrono-Development/chrono-concrete.git |
| 40 | +#WORKDIR /chrono-concrete |
| 41 | +#RUN git submodule init |
| 42 | +#RUN git submodule update |
| 43 | +#RUN mkdir -p build |
| 44 | +# Make flatbuffers |
| 45 | +#WORKDIR /chrono-concrete/src/chrono_thirdparty/flatbuffers |
| 46 | +#RUN cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Release . |
| 47 | +#RUN ninja -j 4 |
| 48 | +#WORKDIR /chrono-concrete/src/chrono_thirdparty/chpf |
| 49 | +#RUN cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Release . |
| 50 | +#RUN ninja -j 4 |
0 commit comments