Skip to content

Commit

Permalink
Build manually PDI and minor updates
Browse files Browse the repository at this point in the history
  • Loading branch information
tpadioleau committed Feb 7, 2025
1 parent 6d5caa5 commit 0eb8934
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 34 deletions.
17 changes: 9 additions & 8 deletions docker/doxygen/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,6 @@ RUN chmod +x /bin/bash_run \
apt-utils \
ca-certificates \
wget \
&& mkdir --parents --mode=0755 /etc/apt/keyrings \
&& echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/pdidev-archive-keyring.gpg] https://raw.githubusercontent.com/pdidev/repo/ubuntu noble main" > /etc/apt/sources.list.d/pdi.list \
&& wget -q -O /etc/apt/keyrings/pdidev-archive-keyring.gpg https://raw.githubusercontent.com/pdidev/repo/ubuntu/pdidev-archive-keyring.gpg \
&& apt-get update -y \
&& apt-get install -y --no-install-recommends \
build-essential \
Expand All @@ -31,16 +28,20 @@ RUN chmod +x /bin/bash_run \
cmake-data \
libfftw3-dev \
liblapacke-dev \
libpdi-dev \
ghostscript \
git \
graphviz \
pkg-config \
doxygen-latex \
&& git clone -b v1.8.0 https://github.com/ginkgo-project/ginkgo.git \
&& cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DGINKGO_BUILD_OMP=OFF -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF -B build-ginkgo -S ginkgo \
&& cmake --build build-ginkgo \
&& cmake --install build-ginkgo \
&& git clone --branch 1.8.1 --depth 1 https://github.com/pdidev/pdi.git \
&& cmake -D BUILD_BENCHMARKING=OFF -D BUILD_DECL_HDF5_PLUGIN=OFF -D BUILD_FORTRAN=OFF -D BUILD_HDF5_PARALLEL=OFF -D BUILD_DECL_NETCDF_PLUGIN=OFF -D BUILD_MPI_PLUGIN=OFF -D BUILD_NETCDF_PARALLEL=OFF -D BUILD_SERIALIZE_PLUGIN=OFF -D BUILD_SET_VALUE_PLUGIN=OFF -D BUILD_SHARED_LIBS=ON -D BUILD_TESTING=OFF -D BUILD_TRACE_PLUGIN=ON -D BUILD_USER_CODE_PLUGIN=ON -D CMAKE_BUILD_TYPE=Release -D USE_paraconf=EMBEDDED -D USE_spdlog=EMBEDDED -D USE_yaml=EMBEDDED -B pdi/build -S pdi \
&& cmake --build pdi/build \
&& cmake --install pdi/build \
&& rm -rf pdi \
&& git clone --branch v1.8.0 --depth 1 https://github.com/ginkgo-project/ginkgo.git \
&& cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DGINKGO_BUILD_OMP=OFF -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF -B ginkgo/build -S ginkgo \
&& cmake --build ginkgo/build \
&& cmake --install ginkgo/build \
&& rm -rf ginkgo \
&& apt-get purge -y \
apt-transport-https \
Expand Down
24 changes: 11 additions & 13 deletions docker/latest/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -43,18 +43,13 @@ RUN chmod +x /bin/bash_run \
&& echo "deb [arch=amd64 signed-by=/usr/share/keyrings/cuda-archive-keyring.asc] https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64 /" > /etc/apt/sources.list.d/cuda.list \
&& wget -O /etc/apt/preferences.d/cuda-repository-pin-600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-ubuntu2404.pin \
;; esac \
&& echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/pdidev-archive-keyring.gpg] https://repo.pdi.dev/ubuntu noble main" > /etc/apt/sources.list.d/pdi.list \
&& wget -q -O /etc/apt/keyrings/pdidev-archive-keyring.gpg https://repo.pdi.dev/ubuntu/pdidev-archive-keyring.gpg \
&& apt-get update -y \
&& apt-get install -y --no-install-recommends \
build-essential \
git \
libfftw3-dev \
liblapacke-dev \
libhwloc-dev \
libpdi-dev \
pdidev-archive-keyring \
pdiplugin-user-code \
pkg-config \
# Installing cmake < 3.28 to workaround issue with Kokkos
&& wget https://github.com/Kitware/CMake/releases/download/v3.27.9/cmake-3.27.9-linux-x86_64.tar.gz \
Expand Down Expand Up @@ -93,23 +88,26 @@ RUN chmod +x /bin/bash_run \
&& echo "/opt/rocm/lib64" >> /etc/ld.so.conf.d/rocm.conf \
&& ldconfig \
;; esac \
&& git clone -b v1.8.0 https://github.com/ginkgo-project/ginkgo.git \
&& cd ginkgo \
&& git clone --branch 1.8.1 --depth 1 https://github.com/pdidev/pdi.git \
&& cmake -D BUILD_BENCHMARKING=OFF -D BUILD_DECL_HDF5_PLUGIN=OFF -D BUILD_FORTRAN=OFF -D BUILD_HDF5_PARALLEL=OFF -D BUILD_DECL_NETCDF_PLUGIN=OFF -D BUILD_MPI_PLUGIN=OFF -D BUILD_NETCDF_PARALLEL=OFF -D BUILD_SERIALIZE_PLUGIN=OFF -D BUILD_SET_VALUE_PLUGIN=OFF -D BUILD_SHARED_LIBS=ON -D BUILD_TESTING=OFF -D BUILD_TRACE_PLUGIN=ON -D BUILD_USER_CODE_PLUGIN=ON -D CMAKE_BUILD_TYPE=Release -D USE_paraconf=EMBEDDED -D USE_spdlog=EMBEDDED -D USE_yaml=EMBEDDED -B pdi/build -S pdi \
&& cmake --build pdi/build \
&& cmake --install pdi/build \
&& rm -rf pdi \
&& git clone -b v1.8.0 --depth 1 https://github.com/ginkgo-project/ginkgo.git \
&& case "${BACKEND}" in \
"cpu") \
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DGINKGO_BUILD_OMP=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF \
cmake -DCMAKE_BUILD_TYPE=Release -DGINKGO_BUILD_OMP=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF -B ginkgo/build -S ginkgo \
;; "cuda") \
cmake -S . -B build -DCMAKE_C_COMPILER=gcc-12 -DCMAKE_CXX_COMPILER=g++-12 -DCMAKE_CUDA_HOST_COMPILER=g++-12 -DCMAKE_BUILD_TYPE=Release -DGINKGO_CUDA_ARCHITECTURES=70 -DGINKGO_BUILD_CUDA=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF \
cmake -DCMAKE_C_COMPILER=gcc-12 -DCMAKE_CXX_COMPILER=g++-12 -DCMAKE_CUDA_HOST_COMPILER=g++-12 -DCMAKE_BUILD_TYPE=Release -DGINKGO_CUDA_ARCHITECTURES=70 -DGINKGO_BUILD_CUDA=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF -B ginkgo/build -S ginkgo \
;; "hip") \
# HIP_PATH needs to be set to avoid Ginkgo defining it (https://github.com/ginkgo-project/ginkgo/blob/develop/cmake/hip_path.cmake).
# The Ginkgo heuristic does not seem to be compatible with the new HIP v6 directory layout.
# This makes amdclang++ fail during cmake compiler test (https://releases.llvm.org/18.1.0/tools/clang/docs/HIPSupport.html#order-of-precedence-for-hip-path)
export HIP_PATH=`hipconfig --path` \
&& cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_HIP_ARCHITECTURES=gfx90a -DGINKGO_BUILD_HIP=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF \
&& cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_HIP_ARCHITECTURES=gfx90a -DGINKGO_BUILD_HIP=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF -B ginkgo/build -S ginkgo \
;; esac \
&& cmake --build build \
&& cmake --install build \
&& cd .. \
&& cmake --build ginkgo/build \
&& cmake --install ginkgo/build \
&& rm -rf ginkgo \
&& apt-get purge -y \
apt-transport-https \
Expand Down
24 changes: 11 additions & 13 deletions docker/oldest/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,6 @@ RUN chmod +x /bin/bash_run \
&& echo "deb [arch=amd64 signed-by=/usr/share/keyrings/cuda-archive-keyring.asc] https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64 /" > /etc/apt/sources.list.d/cuda.list \
&& wget -O /etc/apt/preferences.d/cuda-repository-pin-600 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin \
;; esac \
&& echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/pdidev-archive-keyring.gpg] https://repo.pdi.dev/ubuntu jammy main" > /etc/apt/sources.list.d/pdi.list \
&& wget -q -O /etc/apt/keyrings/pdidev-archive-keyring.gpg https://repo.pdi.dev/ubuntu/pdidev-archive-keyring.gpg \
&& apt-get update -y \
&& apt-get install -y --no-install-recommends \
build-essential \
Expand All @@ -52,9 +50,6 @@ RUN chmod +x /bin/bash_run \
libfftw3-dev \
liblapacke-dev \
libhwloc-dev \
libpdi-dev \
pdidev-archive-keyring \
pdiplugin-user-code \
pkg-config \
&& case "${BACKEND}" in \
"cpu") \
Expand Down Expand Up @@ -82,19 +77,22 @@ RUN chmod +x /bin/bash_run \
&& echo "/opt/rocm/lib64" >> /etc/ld.so.conf.d/rocm.conf \
&& ldconfig \
;; esac \
&& git clone -b v1.8.0 https://github.com/ginkgo-project/ginkgo.git \
&& cd ginkgo \
&& git clone --branch 1.8.1 --depth 1 https://github.com/pdidev/pdi.git \
&& cmake -D BUILD_BENCHMARKING=OFF -D BUILD_DECL_HDF5_PLUGIN=OFF -D BUILD_FORTRAN=OFF -D BUILD_HDF5_PARALLEL=OFF -D BUILD_DECL_NETCDF_PLUGIN=OFF -D BUILD_MPI_PLUGIN=OFF -D BUILD_NETCDF_PARALLEL=OFF -D BUILD_SERIALIZE_PLUGIN=OFF -D BUILD_SET_VALUE_PLUGIN=OFF -D BUILD_SHARED_LIBS=ON -D BUILD_TESTING=OFF -D BUILD_TRACE_PLUGIN=ON -D BUILD_USER_CODE_PLUGIN=ON -D CMAKE_BUILD_TYPE=Release -D USE_paraconf=EMBEDDED -D USE_spdlog=EMBEDDED -D USE_yaml=EMBEDDED -B pdi/build -S pdi \
&& cmake --build pdi/build \
&& cmake --install pdi/build \
&& rm -rf pdi \
&& git clone --branch v1.8.0 --depth 1 https://github.com/ginkgo-project/ginkgo.git \
&& case "${BACKEND}" in \
"cpu") \
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DGINKGO_BUILD_OMP=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF \
cmake -DCMAKE_BUILD_TYPE=Release -DGINKGO_BUILD_OMP=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF -B ginkgo/build -S ginkgo \
;; "cuda") \
cmake -S . -B build -DCMAKE_C_COMPILER=gcc-10 -DCMAKE_CXX_COMPILER=g++-10 -DCMAKE_CUDA_HOST_COMPILER=g++-10 -DCMAKE_BUILD_TYPE=Release -DGINKGO_CUDA_ARCHITECTURES=70 -DGINKGO_BUILD_CUDA=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF \
cmake -DCMAKE_C_COMPILER=gcc-10 -DCMAKE_CXX_COMPILER=g++-10 -DCMAKE_CUDA_HOST_COMPILER=g++-10 -DCMAKE_BUILD_TYPE=Release -DGINKGO_CUDA_ARCHITECTURES=70 -DGINKGO_BUILD_CUDA=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF -B ginkgo/build -S ginkgo \
;; "hip") \
cmake -S . -B build -DCMAKE_PREFIX_PATH=/opt/rocm -DCMAKE_BUILD_TYPE=Release -DCMAKE_HIP_ARCHITECTURES=gfx90a -DGINKGO_BUILD_HIP=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF \
cmake -DCMAKE_PREFIX_PATH=/opt/rocm -DCMAKE_BUILD_TYPE=Release -DCMAKE_HIP_ARCHITECTURES=gfx90a -DGINKGO_BUILD_HIP=ON -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_EXAMPLES=OFF -DGINKGO_BUILD_BENCHMARKS=OFF -B ginkgo/build -S ginkgo \
;; esac \
&& cmake --build build \
&& cmake --install build \
&& cd .. \
&& cmake --build ginkgo/build \
&& cmake --install ginkgo/build \
&& rm -rf ginkgo \
&& apt-get purge -y \
apt-transport-https \
Expand Down

0 comments on commit 0eb8934

Please sign in to comment.