Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
48eb244
Add PyTest-base testing infra for generic platform
Victor-Jung Dec 16, 2025
f918ca2
Remove nvidia-pyindex install (not needed anymore)
Victor-Jung Dec 16, 2025
77b3230
Add nvidia channel to the pip config instead of via nvidia-pyindex (d…
Victor-Jung Dec 16, 2025
d245a37
Update banshee.patch
Victor-Jung Dec 16, 2025
05c020a
Fix patch
Victor-Jung Dec 16, 2025
ec5efd5
Update banshee patch
Victor-Jung Dec 16, 2025
3760ced
Update CI docker
Victor-Jung Dec 17, 2025
b051153
Update generic platform CI to use PyTest
Victor-Jung Dec 17, 2025
eb6e31e
Lint and format
Victor-Jung Dec 17, 2025
42c9cd7
Cleanup pytest.ini
Victor-Jung Dec 17, 2025
89efc39
Apply Calin's comments
Victor-Jung Dec 18, 2025
1929253
Refactor to better support multiple platforms and add cortexm to pyte…
Victor-Jung Dec 18, 2025
393dd9d
Add PyTest suite for Siracusa and Siracusa Tiled
Victor-Jung Dec 18, 2025
54f3e9c
Alpha version of CI suite using PyTest for Siracusa and Siracusa Tiled
Victor-Jung Dec 19, 2025
b2014b2
Add L2_DOUBLEBUFFER_MODELS to the pytest suite, add -s to debug slow …
Victor-Jung Dec 19, 2025
5e1e63b
Fix typo
Victor-Jung Dec 19, 2025
b3789db
Make test use common build folder among a worker to improve compilati…
Victor-Jung Dec 19, 2025
f49f319
Cleanup unused runners and increase timeout for L3 models
Victor-Jung Dec 19, 2025
262a64b
format and lint
Victor-Jung Dec 19, 2025
70f1a19
Migrate Mempool tests to PyTest
Victor-Jung Jan 5, 2026
694f4f9
Migrate Snitch, Chimera, and SoftHier tests to PyTest
Victor-Jung Jan 5, 2026
432bfdf
Format and Lint
Victor-Jung Jan 5, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 3 additions & 17 deletions .github/workflows/_runner-chimera.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,7 @@ name: _runner-chimera
docker-image:
required: true
type: string
test-names:
required: true
type: string
simulators:
pytest-marker:
required: true
type: string

Expand All @@ -39,22 +36,11 @@ jobs:
with:
path: /app/.ccache
key: ccache-ci
- name: Run Test
- name: Run Test # VJUNG: Run tests with 4 parallel threads as GitHub action VM has 4 cores.
run: |
testNames="${{ inputs.test-names }}"
simulators="${{inputs.simulators}}"
cd DeeployTest
mkdir -p /app/.ccache
export CCACHE_DIR=/app/.ccache
export CHIMERA_SDK_HOME=/app/install/chimera-sdk
echo "$simulators" | while IFS= read -r simulator; do
if [[ -n "$simulator" ]]; then
echo "$testNames" | while IFS= read -r testName; do
if [[ -n "$testName" ]]; then
echo "Running test $testName using $simulator"
python testRunner_chimera.py -t Tests/$testName --simulator=$simulator
fi
done
fi
done
pytest test_platforms.py -v -n 4 -m "chimera and ${{ inputs.pytest-marker }}"
shell: bash
12 changes: 3 additions & 9 deletions .github/workflows/_runner-generic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ name: _runner-generic
docker-image:
required: true
type: string
test-names:
pytest-marker:
required: true
type: string

Expand All @@ -36,16 +36,10 @@ jobs:
with:
path: /app/.ccache
key: ccache-ci
- name: Run Test
- name: Run Test # VJUNG: Run tests with 4 parallel threads as GitHub action VM has 4 cores.
run: |
testNames="${{ inputs.test-names }}"
cd DeeployTest
mkdir -p /app/.ccache
export CCACHE_DIR=/app/.ccache
echo "$testNames" | while IFS= read -r testName; do
if [[ -n "$testName" ]]; then
echo "Running test: $testName"
python testRunner_generic.py -t Tests/$testName
fi
done
pytest test_platforms.py -v -n 4 -m "generic and ${{ inputs.pytest-marker }}"
shell: bash
12 changes: 3 additions & 9 deletions .github/workflows/_runner-mempool.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ name: _runner-mempool
docker-image:
required: true
type: string
test-names:
pytest-marker:
required: true
type: string

Expand All @@ -36,16 +36,10 @@ jobs:
with:
path: /app/.ccache
key: ccache-ci
- name: Run Test
- name: Run Test # VJUNG: Run tests with 4 parallel threads as GitHub action VM has 4 cores.
run: |
testNames="${{ inputs.test-names }}"
cd DeeployTest
mkdir -p /app/.ccache
export CCACHE_DIR=/app/.ccache
echo "$testNames" | while IFS= read -r testName; do
if [[ -n "$testName" ]]; then
echo "Running test: $testName"
python testRunner_mempool.py -t Tests/$testName
fi
done
pytest test_platforms.py -v -n 4 -m "mempool and ${{ inputs.pytest-marker }}"
shell: bash
45 changes: 45 additions & 0 deletions .github/workflows/_runner-siracusa-tiled-kernels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# SPDX-FileCopyrightText: 2024 ETH Zurich and University of Bologna
#
# SPDX-License-Identifier: Apache-2.0

---
name: Siracusa Tiled Kernels Runner

on:
workflow_call:
inputs:
runner:
required: true
type: string
docker-image:
required: true
type: string
memory-level:
required: true
type: string
description: 'Memory level marker (l2 or l3)'
buffer-mode:
required: true
type: string
description: 'Buffer mode marker (singlebuffer or doublebuffer)'

jobs:
run-tests:
runs-on: ${{ inputs.runner }}
container:
image: ${{ inputs.docker-image }}

steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive

- name: Install Deeploy
run: |
pip install -e .

- name: Run kernel tests
run: |
cd DeeployTest
pytest test_platforms.py -m "siracusa_tiled and kernels and ${{ inputs.memory-level }} and ${{ inputs.buffer-mode }}" -v
54 changes: 54 additions & 0 deletions .github/workflows/_runner-siracusa-tiled-models.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# SPDX-FileCopyrightText: 2024 ETH Zurich and University of Bologna
#
# SPDX-License-Identifier: Apache-2.0

---
name: Siracusa Tiled Models Runner

on:
workflow_call:
inputs:
runner:
required: true
type: string
docker-image:
required: true
type: string
test-name:
required: true
type: string
description: 'Test name to run'
memory-level:
required: true
type: string
description: 'Memory level marker (l2 or l3)'
buffer-mode:
required: true
type: string
description: 'Buffer mode marker (singlebuffer or doublebuffer)'

jobs:
run-test:
runs-on: ${{ inputs.runner }}
container:
image: ${{ inputs.docker-image }}

steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive

- name: Install Deeploy
run: |
pip install -e .

- name: Run model test with retry
uses: nick-fields/retry@v3
with:
timeout_minutes: 20
max_attempts: 3
retry_on: error
command: |
cd DeeployTest
pytest test_platforms.py -k "${{ inputs.test-name }}-" -m "siracusa_tiled and models and ${{ inputs.memory-level }} and ${{ inputs.buffer-mode }}" -v
79 changes: 0 additions & 79 deletions .github/workflows/_runner-siracusa-tiled-sequential.yml

This file was deleted.

78 changes: 0 additions & 78 deletions .github/workflows/_runner-siracusa-tiled.yml

This file was deleted.

16 changes: 5 additions & 11 deletions .github/workflows/_runner-siracusa.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,10 @@ name: _runner-siracusa
docker-image:
required: true
type: string
test-names:
test-type:
required: true
type: string
num-cores:
required: true
type: number
description: "Type of tests to run: kernels or models"

jobs:
test-runner-siracusa:
Expand All @@ -41,14 +39,10 @@ jobs:
key: ccache-ci
- name: Run Test
run: |
testNames="${{ inputs.test-names }}"
cd DeeployTest
mkdir -p /app/.ccache
export CCACHE_DIR=/app/.ccache
echo "$testNames" | while IFS= read -r testName; do
if [[ -n "$testName" ]]; then
echo "Running test: $testName"
python testRunner_siracusa.py -t Tests/$testName --cores=${{ inputs.num-cores }}
fi
done

# Run tests using pytest markers
pytest test_platforms.py::test_siracusa_${{ inputs.test-type }} -v -s
shell: bash
Loading