Skip to content

Commit

Permalink
Add Intel oneAPI to github-actions.
Browse files Browse the repository at this point in the history
  • Loading branch information
marcfehling committed Jan 13, 2022
1 parent b60f1e8 commit 85e830b
Showing 1 changed file with 71 additions and 0 deletions.
71 changes: 71 additions & 0 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -150,3 +150,74 @@ jobs:
- name: build
run: |
make -j 2
linux-debug-intel-oneapi:
# parallel debug build with Intel oneAPI including MPI and MKL
#
# Based on https://github.com/oneapi-src/oneapi-ci
# For a list of Intel packages see https://oneapi-src.github.io/oneapi-ci/#linux-apt

name: linux debug intel oneapi
runs-on: [ubuntu-18.04]

steps:
- uses: actions/checkout@v2
- name: setup apt repo
run: |
# oneapi-ci/scripts/setup_apt_repo_linux.sh
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
echo "deb https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo apt-get update -o Dir::Etc::sourcelist="sources.list.d/oneAPI.list" -o APT::Get::List-Cleanup="0"
- name: collect versioned dependencies of apt packages
run : |
# oneapi-ci/scripts/apt_depends.sh
apt-cache depends intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic \
intel-oneapi-mpi-devel \
intel-oneapi-mkl-devel \
intel-oneapi-tbb-devel | tee dependencies.txt
- name: cache install
id: cache-install
uses: actions/cache@v2
with:
path: /opt/intel/oneapi
key: install-${{ hashFiles('**/dependencies.txt') }}
- name: install
if: steps.cache-install.outputs.cache-hit != 'true'
run: |
# oneapi-ci/scripts/install_linux_apt.sh
sudo apt-get install -y intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic \
intel-oneapi-mpi-devel \
intel-oneapi-mkl-devel \
intel-oneapi-tbb-devel
sudo apt-get clean
- name: info
run: |
source /opt/intel/oneapi/setvars.sh
mpiicpc -v
cmake --version
- name: configure
run: |
source /opt/intel/oneapi/setvars.sh
cmake -D CMAKE_BUILD_TYPE=Debug \
-D CMAKE_CXX_COMPILER=icpc \
-D DEAL_II_CXX_FLAGS='-Werror' \
-D DEAL_II_EARLY_DEPRECATIONS=ON \
-D DEAL_II_WITH_MPI=ON \
-D DEAL_II_WITH_LAPACK=ON \
-D DEAL_II_WITH_TBB=ON \
-D MPI_DIR=${I_MPI_ROOT} \
-D BLAS_DIR=${MKLROOT} \
-D LAPACK_DIR=${MKLROOT} \
-D TBB_DIR=${TBBROOT} \
.
- name: archive
uses: actions/upload-artifact@v1
with:
name: linux-intel-detailed.log
path: detailed.log
- name: build
run: |
source /opt/intel/oneapi/setvars.sh
make -j 2

0 comments on commit 85e830b

Please sign in to comment.