name: linux with intel on: [push, pull_request] jobs: # Build with Intel toolchain intel-build: runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [ubuntu-20.04] fc: [ifort] cc: [icc] env: FC: ${{ matrix.fc }} CC: ${{ matrix.cc }} FPM_COMPILER: ifort TZ: UTC+04:00 APT_PACKAGES: >- intel-oneapi-compiler-fortran intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic 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 ifort 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 ifort ls -l env: OMP_NUM_THREADS: 2,1