Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
88 changes: 75 additions & 13 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,24 @@ on:
# Runs the CI on the default branch every 6 days at 2AM CET to keep the cache fresh
- cron: "0 1 */6 * *"

env:
DOCKER_IMAGE: ghcr.io/pulp-platform/deeploy:main

jobs:

select-docker-image:
runs-on: ubuntu-latest
outputs:
image: ${{ steps.docker-image.outputs.image }}
steps:
- id: docker-image
run: echo "::set-output name=image::${{ env.DOCKER_IMAGE }}"

build-deeploy:
runs-on: ubuntu-22.04
needs: select-docker-image
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ needs.select-docker-image.outputs.image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand All @@ -26,7 +38,9 @@ jobs:
### Generic Tests ###
generic-kernels:
uses: ./.github/workflows/TestRunnerGeneric.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-names: |
Adder
MultIO
Expand Down Expand Up @@ -63,7 +77,9 @@ jobs:

generic-models:
uses: ./.github/workflows/TestRunnerGeneric.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-names: |
simpleRegression
WaveFormer
Expand All @@ -80,7 +96,9 @@ jobs:
### CortexM Tests ###
cortexm-kernels:
uses: ./.github/workflows/TestRunnerCortexM.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-names: |
Adder
MultIO
Expand All @@ -96,15 +114,19 @@ jobs:

cortexm-models:
uses: ./.github/workflows/TestRunnerCortexM.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-names: |
simpleRegression
WaveFormer

### Snitch Tests ###
snitch-kernels:
uses: ./.github/workflows/TestRunnerSnitch.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-names: |
Adder
iSoftmax
Expand All @@ -123,7 +145,9 @@ jobs:

snitch-kernels-tiled-singlebuffer-L2:
uses: ./.github/workflows/TestRunnerTiledSnitchSequential.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
tests-config: |
[
{
Expand Down Expand Up @@ -169,7 +193,9 @@ jobs:
### Mempool Tests ###
mempool-kernels:
uses: ./.github/workflows/TestRunnerMempool.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-names: |
Adder
MultIO
Expand All @@ -194,7 +220,9 @@ jobs:

mempool-models:
uses: ./.github/workflows/TestRunnerMempool.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-names: |
simpleRegression
simpleCNN
Expand All @@ -209,7 +237,9 @@ jobs:
### Siracusa Tests ###
siracusa-kernels:
uses: ./.github/workflows/TestRunnerSiracusa.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-names: |
Adder
MultIO
Expand Down Expand Up @@ -240,7 +270,9 @@ jobs:

siracusa-models:
uses: ./.github/workflows/TestRunnerSiracusa.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-names: |
simpleRegression
miniMobileNet
Expand All @@ -254,7 +286,9 @@ jobs:

siracusa-kernels-tiled-singlebuffer-L2:
uses: ./.github/workflows/TestRunnerTiledSiracusaSequential.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
tests-config: |
[
{
Expand Down Expand Up @@ -330,7 +364,9 @@ jobs:

siracusa-kernels-tiled-doublebuffer-L2:
uses: ./.github/workflows/TestRunnerTiledSiracusaSequential.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
tests-config: |
[
{
Expand Down Expand Up @@ -435,7 +471,9 @@ jobs:
num-cores:
- 8
uses: ./.github/workflows/TestRunnerTiledSiracusa.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-name: ${{ matrix.test-data.name }}
num-cores: ${{ matrix.num-cores }}
L1: ${{ toJson(matrix.test-data.L1) }}
Expand Down Expand Up @@ -464,7 +502,9 @@ jobs:
default-memory-level:
- "L3"
uses: ./.github/workflows/TestRunnerTiledSiracusa.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-name: ${{ matrix.test-data.name }}
num-cores: ${{ matrix.num-cores }}
L1: ${{ toJson(matrix.test-data.L1) }}
Expand Down Expand Up @@ -500,7 +540,9 @@ jobs:
default-memory-level:
- "L3"
uses: ./.github/workflows/TestRunnerTiledSiracusa.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-name: ${{ matrix.test-data.name }}
num-cores: ${{ matrix.num-cores }}
L1: ${{ toJson(matrix.test-data.L1) }}
Expand All @@ -509,7 +551,9 @@ jobs:

siracusa-neureka-kernels-tiled-singlebuffer-L2:
uses: ./.github/workflows/TestRunnerTiledSiracusaWithNeurekaSequential.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
tests-config: |
[
{
Expand All @@ -533,7 +577,9 @@ jobs:

siracusa-neureka-kernels-tiled-doublebuffer-L2:
uses: ./.github/workflows/TestRunnerTiledSiracusaWithNeurekaSequential.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
tests-config: |
[
{
Expand Down Expand Up @@ -574,7 +620,9 @@ jobs:
default-memory-level:
- "L3"
uses: ./.github/workflows/TestRunnerTiledSiracusaWithNeureka.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-name: ${{ matrix.test-data.name }}
num-cores: ${{ matrix.num-cores }}
L1: ${{ toJson(matrix.test-data.L1) }}
Expand All @@ -598,7 +646,9 @@ jobs:
default-memory-level:
- "L3"
uses: ./.github/workflows/TestRunnerTiledSiracusaWithNeureka.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-name: ${{ matrix.test-data.name }}
num-cores: ${{ matrix.num-cores }}
L1: ${{ toJson(matrix.test-data.L1) }}
Expand All @@ -607,7 +657,9 @@ jobs:

siracusa-neureka-kernels-tiled-singlebuffer-L2-wmem:
uses: ./.github/workflows/TestRunnerTiledSiracusaWithNeurekaSequential.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
tests-config: |
[
{
Expand Down Expand Up @@ -652,7 +704,9 @@ jobs:
neureka-wmem:
- true
uses: ./.github/workflows/TestRunnerTiledSiracusaWithNeureka.yml
needs: select-docker-image
with:
docker-image: ${{ needs.select-docker-image.outputs.image }}
test-name: ${{ matrix.test-data.name }}
num-cores: ${{ matrix.num-cores }}
L1: ${{ toJson(matrix.test-data.L1) }}
Expand All @@ -664,8 +718,9 @@ jobs:
### Deeploy Extension and Internal Tests ###
deeploy-memory-allocation:
runs-on: ubuntu-22.04
needs: select-docker-image
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ needs.select-docker-image.outputs.image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand All @@ -676,15 +731,16 @@ jobs:
- name: Run Test
run: |
cd DeeployTest
python testMVP.py -t Tests/CCT/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=40000 --memAllocStrategy=MiniMalloc
python testMVP.py -t Tests/CCT/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=30000 --memAllocStrategy=MiniMalloc --shouldFail
python testMVP.py -t Tests/CCT/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=80000 --memAllocStrategy=TetrisRandom
python testMVP.py -t Tests/CCT/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=40000 --memAllocStrategy=TetrisRandom --shouldFail
python testMVP.py -t Tests/CCT/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=75000 --memAllocStrategy=MiniMalloc
python testMVP.py -t Tests/CCT/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=70000 --memAllocStrategy=MiniMalloc --shouldFail
python testMVP.py -t Tests/CCT/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=90000 --memAllocStrategy=TetrisRandom
python testMVP.py -t Tests/CCT/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=75000 --memAllocStrategy=TetrisRandom --shouldFail

deeploy-state-serialization:
runs-on: ubuntu-22.04
needs: select-docker-image
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ needs.select-docker-image.outputs.image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand All @@ -703,8 +759,9 @@ jobs:

deeploy-memory-level-extension:
runs-on: ubuntu-22.04
needs: select-docker-image
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ needs.select-docker-image.outputs.image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand All @@ -723,8 +780,9 @@ jobs:

deeploy-tiler-extension:
runs-on: ubuntu-22.04
needs: select-docker-image
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ needs.select-docker-image.outputs.image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand All @@ -747,8 +805,9 @@ jobs:

deeploy-memory-allocation-extension:
runs-on: ubuntu-22.04
needs: select-docker-image
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ needs.select-docker-image.outputs.image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand All @@ -769,8 +828,9 @@ jobs:

deeploy-typing:
runs-on: ubuntu-22.04
needs: select-docker-image
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ needs.select-docker-image.outputs.image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand All @@ -786,8 +846,9 @@ jobs:

deeploy-regex-matching:
runs-on: ubuntu-22.04
needs: select-docker-image
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ needs.select-docker-image.outputs.image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand All @@ -803,8 +864,9 @@ jobs:

linting:
runs-on: ubuntu-22.04
needs: select-docker-image
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ needs.select-docker-image.outputs.image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand Down
5 changes: 4 additions & 1 deletion .github/workflows/TestRunnerCortexM.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ name: TestRunnerCortexM
on:
workflow_call:
inputs:
docker-image:
required: true
type: string
test-names:
required: true
type: string
Expand All @@ -11,7 +14,7 @@ jobs:
test-runner-cortexm:
runs-on: ubuntu-22.04
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ inputs.docker-image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand Down
5 changes: 4 additions & 1 deletion .github/workflows/TestRunnerGeneric.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ name: TestRunnerGeneric
on:
workflow_call:
inputs:
docker-image:
required: true
type: string
test-names:
required: true
type: string
Expand All @@ -11,7 +14,7 @@ jobs:
test-runner-generic:
runs-on: ubuntu-22.04
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ inputs.docker-image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand Down
5 changes: 4 additions & 1 deletion .github/workflows/TestRunnerMempool.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ name: TestRunnerMempool
on:
workflow_call:
inputs:
docker-image:
required: true
type: string
test-names:
required: true
type: string
Expand All @@ -11,7 +14,7 @@ jobs:
test-runner-mempool:
runs-on: ubuntu-22.04
container:
image: ghcr.io/pulp-platform/deeploy:main
image: ${{ inputs.docker-image }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand Down
Loading
Loading