Skip to content

283 cell based pdes #731

283 cell based pdes

283 cell based pdes #731

name: Ubuntu parallel
on:
workflow_dispatch:
pull_request:
branches:
- '**'
push:
branches:
- develop
jobs:
build-and-test:
if: ${{ !contains(github.event.pull_request.labels.*.name, 'ci:off') }}
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
include:
- cc: "gcc"
cxx: "g++"
- cc: "icx"
cxx: "icpx"
env:
CHASTE_TEST_OUTPUT: ${{ github.workspace }}/chaste-test-dir
CC: ${{ matrix.cc }}
CXX: ${{ matrix.cxx }}
steps:
- name: checkout repository
uses: actions/checkout@v4
- name: install dependencies
run: |
echo 'deb [signed-by=/usr/share/keyrings/chaste.asc] https://chaste.github.io/ubuntu jammy/' | sudo tee -a /etc/apt/sources.list.d/chaste.list
sudo wget -O /usr/share/keyrings/chaste.asc https://chaste.github.io/chaste.asc
sudo apt update
sudo apt install chaste-dependencies
- name: Downgrade libexpat1 (native ubuntu-22.04 only)
# if: ${{ matrix.os == 'ubuntu-22.04' }}
run: |
if dpkg -l | grep libexpat1-dev | grep 2.4.7-1ubuntu; then
sudo apt-get install -y --allow-downgrades libexpat1=2.4.7-1 libexpat1-dev=2.4.7-1
fi
- name: install and set up Intel LLVM compiler
run: |
echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
sudo apt update
sudo apt install intel-oneapi-compiler-dpcpp-cpp
source /opt/intel/oneapi/setvars.sh
printenv >> $GITHUB_ENV
if: ${{ matrix.cc == 'icx' }}
- name: compiler version
run: |
${CXX} --version
- name: make build and test directories
run: |
mkdir -p chaste-build-dir
mkdir -p ${CHASTE_TEST_OUTPUT}
- name: cmake configure
run: cmake -DCMAKE_BUILD_TYPE=Release ..
working-directory: chaste-build-dir
- name: build parallel test pack
run: cmake --build . --parallel 4 --target Parallel
working-directory: chaste-build-dir
- name: run parallel test pack
run: ctest -j4 -L Parallel --output-on-failure
working-directory: chaste-build-dir