71 lines
2 KiB
Text
71 lines
2 KiB
Text
|
name: linux with intel ifx compiler
|
||
|
|
||
|
on: [push, pull_request]
|
||
|
|
||
|
jobs:
|
||
|
# Build with Intel ifx toolchain
|
||
|
intel-build:
|
||
|
runs-on: ${{ matrix.os }}
|
||
|
strategy:
|
||
|
fail-fast: false
|
||
|
matrix:
|
||
|
os: [ubuntu-20.04]
|
||
|
fc: [ifx]
|
||
|
cc: [icc]
|
||
|
|
||
|
env:
|
||
|
FC: ${{ matrix.fc }}
|
||
|
CC: ${{ matrix.cc }}
|
||
|
FPM_COMPILER: ifx
|
||
|
TZ: UTC+04:00
|
||
|
APT_PACKAGES: >-
|
||
|
intel-oneapi-compiler-fortran
|
||
|
intel-oneapi-compiler-dpcpp-cpp-and-cpp
|
||
|
intel-oneapi-mkl-devel
|
||
|
asciidoctor
|
||
|
|
||
|
steps:
|
||
|
- name: Checkout code
|
||
|
uses: actions/checkout@v2
|
||
|
|
||
|
- uses: actions/setup-python@v1
|
||
|
with:
|
||
|
python-version: '3.x'
|
||
|
|
||
|
- name: Add Intel repository
|
||
|
run: |
|
||
|
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
|
||
|
rm 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
|
||
|
|
||
|
- name: Install Intel oneAPI compiler
|
||
|
run: |
|
||
|
sudo apt-get install ${{ env.APT_PACKAGES }}
|
||
|
source /opt/intel/oneapi/setvars.sh
|
||
|
printenv >> $GITHUB_ENV
|
||
|
|
||
|
- name: Install fpm
|
||
|
run: |
|
||
|
echo $PATH
|
||
|
pwd
|
||
|
uname -a
|
||
|
wget https://raw.githubusercontent.com/urbanjost/index/main/bootstrap/fpm.F90
|
||
|
mkdir -p /home/runner/.local/bin tmp
|
||
|
ulimit -c unlimited -d unlimited -f unlimited -m unlimited -s unlimited -t unlimited -v unlimited -x unlimited
|
||
|
ifx fpm.F90 -Itmp -module tmp -o /home/runner/.local/bin/fpm
|
||
|
ls -l
|
||
|
rm -fv *.mod tmp/*.mod
|
||
|
|
||
|
- name: Run Intel unit tests on Linux
|
||
|
run: |
|
||
|
printenv TZ
|
||
|
printenv FPM_COMPILER
|
||
|
printenv OMP_NUM_THREADS
|
||
|
ulimit -c unlimited -d unlimited -f unlimited -m unlimited -s unlimited -t unlimited -v unlimited -x unlimited
|
||
|
fpm test --profile release --compiler ifx
|
||
|
ls -l
|
||
|
env:
|
||
|
OMP_NUM_THREADS: 2,1
|