Skip to content

Add SDFG.frontend_metadata for frontend-owned, opaque metadata #17

Add SDFG.frontend_metadata for frontend-owned, opaque metadata

Add SDFG.frontend_metadata for frontend-owned, opaque metadata #17

name: New Libnodes
# Runner for the library nodes the FaCe branch adds that are NOT on main (standard-library
# Fortran-intrinsic nodes + the BLAS/LAPACK/FFT extension nodes). Python 3.14, simplification
# ON but auto-optimization OFF. The MPI extension nodes carry the ``mpi`` marker and run on the
# MPI-capable heterogeneous runner instead (this is a plain ubuntu runner, no MPI launcher).
on:
push:
branches: [ FaCe ]
pull_request:
branches: [ FaCe ]
concurrency:
group: ${{github.workflow}}-${{github.ref}}
cancel-in-progress: true
jobs:
libnodes:
if: "!contains(github.event.pull_request.labels.*.name, 'no-ci')"
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.14']
env:
# simplify ON, autoopt OFF.
DACE_optimizer_automatic_simplification: '1'
DACE_optimizer_autooptimize: '0'
NOSTATUSBAR: '1'
DACE_testing_serialization: '1'
DACE_testing_deserialize_exception: '1'
DACE_cache: unique
steps:
- uses: actions/checkout@v7
with:
submodules: 'recursive'
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
sudo apt-get update
# OpenBLAS/LAPACKE for the BLAS/LAPACK extension nodes, FFTW3 for the FFT backend.
sudo apt-get install -y libyaml-dev cmake \
libblas-dev libopenblas-dev liblapacke-dev libfftw3-dev
pip install pytest-xdist
pip install -e ".[testing]"
- name: Standard nodes
run: |
pytest -n auto --tb=short --timeout_method thread --timeout=300 -m "not gpu" \
tests/library/allany_node_test.py \
tests/library/argminmax_test.py \
tests/library/broadcast_test.py \
tests/library/copy_node_test.py \
tests/library/count_node_test.py \
tests/library/cshift_test.py \
tests/library/memset_node_test.py \
tests/library/merge_node_test.py \
tests/library/norm2_test.py \
tests/library/matmul_trans_test.py \
tests/passes/copy_memset_parallel_selection_test.py
- name: FFT nodes
run: |
pytest -n 1 --tb=short --timeout_method thread --timeout=300 -m "not gpu" \
tests/library/fft_pure_ndim_test.py \
tests/library/fft_fftw3_test.py \
tests/library/fft_axis_test.py
- name: BLAS/LAPACK nodes
run: |
pytest -n 1 --tb=short --timeout_method thread --timeout=300 \
tests/library/blas/blas_extensions_openblas_test.py \
tests/library/lapack/lapack_extensions_openblas_test.py