Skip to content

Use calloc for all data allocation, update C seq template #110

Use calloc for all data allocation, update C seq template

Use calloc for all data allocation, update C seq template #110

Workflow file for this run

name: Airfoil
on:
push:
branches:
- master
pull_request:
branches:
- master
release:
types:
- created
jobs:
validate-airfoil:
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
language: [ { name: 'c', ext: 'cpp' } ]
optimisation: [ 'seq', 'genseq', 'openmp' ]
mesh: [ 'plain' ]
defaults:
run:
working-directory: apps/${{ matrix.language.name }}/airfoil/airfoil_${{ matrix.mesh }}/dp
env:
OP2_COMPILER: gnu
steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
token: ${{ github.token }}
- name: Make build config
working-directory: op2
run: make config
- name: Build OP2 backend
working-directory: op2
run: make -j seq openmp
- name: Build airfoil
run: make airfoil_${{ matrix.optimisation }}
- name: Get airfoil mesh data
if: ${{ matrix.mesh == 'plain' }}
run: wget https://op-dsl.github.io/docs/OP2/new_grid.dat
- name: Run airfoil
run: ./airfoil_${{ matrix.optimisation }} > ~/output.txt
- name: Validate airfoil output
run: grep -q "This test is considered PASSED" ~/output.txt || exit 1
- name: Archive airfoil output
uses: actions/upload-artifact@v4
with:
name: airfoil-${{ matrix.language.name }}-${{ matrix.optimisation }}-${{ matrix.mesh }}-output
path: ~/output.txt