Skip to content

Commit 577f980

Browse files
authored
Merge pull request #1102 from caic99/docker
Build: update intel image to ubuntu 22.04
2 parents c2078f8 + 0ba76dd commit 577f980

File tree

1 file changed

+11
-12
lines changed

1 file changed

+11
-12
lines changed

Dockerfile.intel

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1-
FROM debian:bullseye-slim
1+
FROM ubuntu:22.04
22

3-
RUN apt-get update && apt-get install -y bc cmake git gnupg gcc g++ python3 sudo wget vim unzip
3+
RUN apt-get update && apt-get install -y \
4+
bc cmake git gnupg gcc g++ python3-numpy sudo wget vim unzip \
5+
libcereal-dev libxc-dev libgtest-dev libgmock-dev
46

57
# Following steps by https://software.intel.com/content/www/us/en/develop/documentation/installation-guide-for-intel-oneapi-toolkits-linux/top/installation/install-using-package-managers/apt.html .
68
RUN cd /tmp && \
@@ -11,20 +13,22 @@ RUN cd /tmp && \
1113

1214
# To save disk space, only install the required components, but not the whole intel-hpckit.
1315
RUN apt-get update --allow-unauthenticated \
14-
&& apt-get install -y \
16+
&& apt-get install -y --no-install-recommends \
1517
intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic \
1618
intel-oneapi-compiler-fortran \
1719
intel-oneapi-mkl-devel \
1820
intel-oneapi-mpi-devel
1921

2022
# These environment variables are the most essential part generated by `source /opt/intel/oneapi/setvars.sh`.
2123
# It is recommended to do it again if this docker image is used for development.
22-
ENV I_MPI_ROOT=/opt/intel/oneapi/mpi/latest \
24+
ENV I_MPI_ROOT='/opt/intel/oneapi/mpi/latest' \
2325
LIBRARY_PATH=/opt/intel/oneapi/tbb/latest/env/../lib/intel64/gcc4.8:/opt/intel/oneapi/mpi/latest//libfabric/lib:/opt/intel/oneapi/mpi/latest//lib/release:/opt/intel/oneapi/mpi/latest//lib:/opt/intel/oneapi/mkl/latest/lib/intel64:/opt/intel/oneapi/compiler/latest/linux/compiler/lib/intel64_lin:/opt/intel/oneapi/compiler/latest/linux/lib \
2426
LD_LIBRARY_PATH=/opt/intel/oneapi/tbb/latest/env/../lib/intel64/gcc4.8:/opt/intel/oneapi/mpi/latest//libfabric/lib:/opt/intel/oneapi/mpi/latest//lib/release:/opt/intel/oneapi/mpi/latest//lib:/opt/intel/oneapi/mkl/latest/lib/intel64:/opt/intel/oneapi/debugger/10.1.2/gdb/intel64/lib:/opt/intel/oneapi/debugger/10.1.2/libipt/intel64/lib:/opt/intel/oneapi/debugger/10.1.2/dep/lib:/opt/intel/oneapi/compiler/latest/linux/lib:/opt/intel/oneapi/compiler/latest/linux/lib/x64:/opt/intel/oneapi/compiler/latest/linux/lib/emu:/opt/intel/oneapi/compiler/latest/linux/compiler/lib/intel64_lin \
2527
PATH=/opt/intel/oneapi/mpi/latest//libfabric/bin:/opt/intel/oneapi/mpi/latest//bin:/opt/intel/oneapi/mkl/latest/bin/intel64:/opt/intel/oneapi/dev-utilities/latest/bin:/opt/intel/oneapi/debugger/10.1.2/gdb/intel64/bin:/opt/intel/oneapi/compiler/latest/linux/bin/intel64:/opt/intel/oneapi/compiler/latest/linux/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin \
26-
MKLROOT=/opt/intel/oneapi/mkl/latest \
27-
I_MPI_ROOT=/opt/intel/oneapi/mpi/latest
28+
MKLROOT='/opt/intel/oneapi/mkl/latest' \
29+
FI_PROVIDER_PATH='/opt/intel/oneapi/mpi/latest/libfabric/lib/prov:/usr/lib64/libfabric' \
30+
CMAKE_PREFIX_PATH='/opt/intel/oneapi/vpl/latest:/opt/intel/oneapi/tbb/latest/env/..:/opt/intel/oneapi/dnnl/latest/cpu_dpcpp_gpu_dpcpp/../lib/cmake:/opt/intel/oneapi/dal/latest:/opt/intel/oneapi/compiler/latest/linux/IntelDPCPP' \
31+
CMPLR_ROOT='/opt/intel/oneapi/compiler/latest'
2832

2933
# Using the Intel Compilers with mpi wrapper.
3034
# Further test on oneAPI Compilers needed: icx, icpx, ifx
@@ -39,12 +43,7 @@ RUN source /opt/intel/oneapi/setvars.sh \
3943
&& tar xzf elpa-2021.05.002.tar.gz && rm elpa-2021.05.002.tar.gz \
4044
&& cd elpa-2021.05.002 && mkdir build && cd build \
4145
&& ../configure FCFLAGS="-qmkl=cluster" \
42-
&& make -j8 \
46+
&& make -j`nproc` \
4347
&& make PREFIX=/usr/local install \
4448
&& ln -s /usr/local/include/elpa-2021.05.002/elpa /usr/local/include/ \
4549
&& cd /tmp && rm -rf elpa-2021.05.002
46-
47-
RUN cd /tmp \
48-
&& git clone https://github.com/USCiLab/cereal.git \
49-
&& cp -r cereal/include /usr/local \
50-
&& rm -rf cereal

0 commit comments

Comments
 (0)