Skip to content

Speedup with Cython #345

Speedup with Cython

Speedup with Cython #345

Workflow file for this run

---
name: Build
on:
push:
branches: [ master ]
paths:
- .build/*
- src/fiat/*
- pyproject.toml
- .github/workflows/build.yml
pull_request:
branches: [ master ]
paths:
- .build/*
- src/fiat/*
- pyproject.toml
- .github/workflows/build.yml
jobs:
Test:
defaults:
run:
shell: bash -l {0}
strategy:
fail-fast: false
matrix:
os: ["ubuntu-latest"] #, "macos-latest", "windows-latest"]
python-version: ["3.12"] # fix tests to support older versions
include:
- os: ubuntu-latest
label: linux-64
prefix: /home/runner/miniconda3/envs/fiat_test
name: ${{ matrix.os }} - py${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Generate env yaml
run: |
pip install tomli
python make_env.py build
- name: Load cache
id: cache
uses: actions/cache/restore@v4
with:
path: |
/home/runner/miniconda3
~/pycache
# the below two settings mean we'll alway srestore the cache
# but the cache hit output can tell us if we have to update afterwards
key: build-${{ hashFiles('environment.yml') }}
restore-keys: |
build
- name: Cache failed
if: steps.cache.outputs.cache-matched-key == ''
run: |
echo "Failed to restore any cache. exiting..."
exit 1
- name: Update environment
if: steps.cache.outputs.cache-hit != 'true'
run: |
export PATH=/home/runner/miniconda3/bin:$PATH
mamba env update -n fiat_build -f environment.yml
- name: Build FIAT
run: |
chmod +x .build/linux64.sh
.build/linux64.sh
- name: Create Testdata
run: |
export PATH=/home/runner/miniconda3/bin:$PATH
source /home/runner/miniconda3/etc/profile.d/conda.sh
conda activate fiat_build
pip install tomli-w
python .testdata/create_test_data.py
conda deactivate
- name: Test Binary
run: ./bin/Release/fiat run .testdata/geom_event.toml