Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
05fc8aa
Reordered some float kernel tests. Clean-up gitignore file
diaconuccalin Nov 24, 2025
4079ccd
Add various test cases for FP32 ReduceMean
diaconuccalin Nov 24, 2025
8417a54
Extended ReduceMean binder to support all-axis reduction (so missing …
diaconuccalin Nov 24, 2025
6853ac5
ReduceMean parser fixes
diaconuccalin Nov 24, 2025
b66ca26
Implement reduction of singleton reduced sizes in ReduceMean. Warning…
diaconuccalin Nov 25, 2025
a568ff9
Added ReduceMean pass to remove if only singleton dimension reduction…
diaconuccalin Nov 25, 2025
a0b82c0
Improved ReduceMean template readability. Added ReduceMean test match…
diaconuccalin Nov 27, 2025
ab1ad52
Reverted changes from regular reduce mean template and moved them to …
diaconuccalin Nov 27, 2025
5ce3574
Added parallelism to PULPOpen FP32 ReduceMean kernel
diaconuccalin Nov 27, 2025
26070c7
FP ReduceMean PULPOpen template fix
diaconuccalin Nov 27, 2025
12b4c07
Implement changes for tiling an uninitialized number of dimensions fo…
diaconuccalin Nov 27, 2025
81eb8a1
Applied fixes to the PULPOpen FP32 ReduceMean template and tiling con…
diaconuccalin Dec 9, 2025
c601384
Fixed test naming issues. Reduced dimensions of 2 ReduceMean tests
diaconuccalin Dec 9, 2025
49c590e
Added CI tests for double buffering and L3 for PULPOpen FP32 ReduceMean
diaconuccalin Dec 9, 2025
0199be1
Improved comments
diaconuccalin Dec 9, 2025
654f451
Removed more restrictive ReduceMean policy constraint
diaconuccalin Dec 9, 2025
ac928aa
Reintroduced more restrictive ReduceMean constraint
diaconuccalin Dec 10, 2025
ecf38e4
Updated changelog
diaconuccalin Dec 10, 2025
82c33aa
Apply code rabbit suggestions
diaconuccalin Dec 10, 2025
a9e09ae
Reorganized tests
diaconuccalin Dec 14, 2025
e3830ad
Fixed test locations in text
diaconuccalin Dec 14, 2025
dd8973e
Relocated softmax
diaconuccalin Dec 14, 2025
2be214c
Quickfix
diaconuccalin Dec 14, 2025
d2762ad
Quickfix
diaconuccalin Dec 14, 2025
9898f37
Quickfix
diaconuccalin Dec 15, 2025
4fca212
Fix formatting
diaconuccalin Dec 15, 2025
3fcc048
New test reordering and post-merge fixes
diaconuccalin Dec 15, 2025
5b8afcf
Format fix
diaconuccalin Dec 15, 2025
a0cb405
Fix formatting
diaconuccalin Dec 15, 2025
19c8ed4
Move Tests
Xeratec Dec 21, 2025
d88860b
Adapt workflows
Xeratec Dec 21, 2025
9c7da3a
Update ReadMe
Xeratec Dec 21, 2025
6cd45a7
Fix errors
Xeratec Dec 21, 2025
3cff86f
Fix errors
Xeratec Dec 22, 2025
a7d0483
Remove duplicated test
Xeratec Dec 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 3 additions & 3 deletions .github/workflows/ci-deeploy-testing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,19 +40,19 @@ jobs:
include:
- name: fail-input0
platform: Generic
test: testTypeInferenceDifferentTypes
test: Others/TypeInference
type_map: "A=int8_t B=int8_t C=int8_t"
offset_map: "A=0 B=0 C=0"
shouldFail: true
- name: fail-input2
platform: Generic
test: testTypeInferenceDifferentTypes
test: Others/TypeInference
type_map: "A=int16_t B=int8_t C=int16_t"
offset_map: "A=0 B=0 C=0"
shouldFail: true
- name: pass
platform: Generic
test: testTypeInferenceDifferentTypes
test: Others/TypeInference
type_map: "A=int16_t B=int8_t C=int32_t"
offset_map: "A=0 B=0 C=0"
shouldFail: false
Expand Down
58 changes: 29 additions & 29 deletions .github/workflows/ci-deeploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,10 @@ jobs:
shell: bash
run: |
cd DeeployTest
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=60000 --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
python testMVP.py -t Tests/Models/CCT/FP32/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=75000 --memAllocStrategy=MiniMalloc
python testMVP.py -t Tests/Models/CCT/FP32/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=60000 --memAllocStrategy=MiniMalloc --shouldFail
python testMVP.py -t Tests/Models/CCT/FP32/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=90000 --memAllocStrategy=TetrisRandom
python testMVP.py -t Tests/Models/CCT/FP32/CCT_1_16_16_8 -p Siracusa --defaultMemLevel=L2 --l1=64000 --l2=75000 --memAllocStrategy=TetrisRandom --shouldFail

deeploy-state-serialization:
needs: select-env
Expand All @@ -82,10 +82,10 @@ jobs:
shell: bash
run: |
cd DeeployTest
python deeployStateEqualityTest.py -t ./Tests/simpleRegression -p QEMU-ARM
python deeployStateEqualityTest.py -t ./Tests/simpleRegression -p Siracusa
python deeployStateEqualityTest.py -t ./Tests/simpleRegression -p MemPool
python deeployStateEqualityTest.py -t ./Tests/simpleRegression -p Generic
python deeployStateEqualityTest.py -t ./Tests/Models/CNN_Linear2 -p QEMU-ARM
python deeployStateEqualityTest.py -t ./Tests/Models/CNN_Linear2 -p Siracusa
python deeployStateEqualityTest.py -t ./Tests/Models/CNN_Linear2 -p MemPool
python deeployStateEqualityTest.py -t ./Tests/Models/CNN_Linear2 -p Generic

deeploy-memory-level-extension:
needs: select-env
Expand All @@ -104,10 +104,10 @@ jobs:
shell: bash
run: |
cd DeeployTest
python testMemoryLevelExtension.py -t ./Tests/simpleRegression -p QEMU-ARM
python testMemoryLevelExtension.py -t ./Tests/simpleRegression -p Siracusa
python testMemoryLevelExtension.py -t ./Tests/simpleRegression -p MemPool
python testMemoryLevelExtension.py -t ./Tests/simpleRegression -p Generic
python testMemoryLevelExtension.py -t ./Tests/Models/CNN_Linear2 -p QEMU-ARM
python testMemoryLevelExtension.py -t ./Tests/Models/CNN_Linear2 -p Siracusa
python testMemoryLevelExtension.py -t ./Tests/Models/CNN_Linear2 -p MemPool
python testMemoryLevelExtension.py -t ./Tests/Models/CNN_Linear2 -p Generic

deeploy-tiler-extension:
needs: select-env
Expand All @@ -126,14 +126,14 @@ jobs:
shell: bash
run: |
cd DeeployTest
python testTilerExtension.py -p Siracusa -t ./Tests/simpleRegression
python testTilerExtension.py -p Siracusa -t ./Tests/simpleCNN
python testTilerExtension.py -p Siracusa -t ./Tests/testMatMul
python testTilerExtension.py -p Siracusa -t ./Tests/testMaxPool
python testTilerExtension.py -p Siracusa -t ./Tests/simpleRegression --l1 2000 --shouldFail
python testTilerExtension.py -p Siracusa -t ./Tests/simpleCNN --l1 2000 --shouldFail
python testTilerExtension.py -p Siracusa -t ./Tests/testMatMul --l1 2000 --shouldFail
python testTilerExtension.py -p Siracusa -t ./Tests/testMaxPool --l1 2000 --shouldFail
python testTilerExtension.py -p Siracusa -t ./Tests/Models/CNN_Linear2
python testTilerExtension.py -p Siracusa -t ./Tests/Models/CNN_Linear1
python testTilerExtension.py -p Siracusa -t ./Tests/Kernels/Integer/MatMul/Regular
python testTilerExtension.py -p Siracusa -t ./Tests/Kernels/Integer/MaxPool
python testTilerExtension.py -p Siracusa -t ./Tests/Models/CNN_Linear2 --l1 2000 --shouldFail
python testTilerExtension.py -p Siracusa -t ./Tests/Models/CNN_Linear1 --l1 2000 --shouldFail
python testTilerExtension.py -p Siracusa -t ./Tests/Kernels/Integer/MatMul/Regular --l1 2000 --shouldFail
python testTilerExtension.py -p Siracusa -t ./Tests/Kernels/Integer/MaxPool --l1 2000 --shouldFail

deeploy-memory-allocation-extension:
needs: select-env
Expand All @@ -152,12 +152,12 @@ jobs:
shell: bash
run: |
cd DeeployTest
python testTilerExtension.py -p Siracusa -t ./Tests/simpleRegression
python testTilerExtension.py -p Siracusa -t ./Tests/simpleCNN
python testTilerExtension.py -p Siracusa -t ./Tests/miniMobileNet
python testTilerExtension.py -p Siracusa -t ./Tests/miniMobileNetv2
python testTilerExtension.py -p Siracusa -t ./Tests/testMatMul
python testTilerExtension.py -p Siracusa -t ./Tests/testMaxPool
python testTilerExtension.py -p Siracusa -t ./Tests/Models/CNN_Linear2
python testTilerExtension.py -p Siracusa -t ./Tests/Models/CNN_Linear1
python testTilerExtension.py -p Siracusa -t ./Tests/Models/miniMobileNet
python testTilerExtension.py -p Siracusa -t ./Tests/Models/miniMobileNetv2
python testTilerExtension.py -p Siracusa -t ./Tests/Kernels/Integer/MatMul/Regular
python testTilerExtension.py -p Siracusa -t ./Tests/Kernels/Integer/MaxPool

deeploy-typing:
needs: select-env
Expand Down Expand Up @@ -195,9 +195,9 @@ jobs:
shell: bash
run: |
cd DeeployTest
python testPrintInputOutputTransformation.py -p Generic -t ./Tests/simpleRegression
python testPrintInputOutputTransformation.py -p Siracusa -t ./Tests/simpleRegression
python testDebugPrintPass.py -p Generic -t ./Tests/simpleRegression
python testPrintInputOutputTransformation.py -p Generic -t ./Tests/Models/CNN_Linear2
python testPrintInputOutputTransformation.py -p Siracusa -t ./Tests/Models/CNN_Linear2
python testDebugPrintPass.py -p Generic -t ./Tests/Models/CNN_Linear2

deeploy-regex-matching:
needs: select-env
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci-platform-chimera.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,6 @@ jobs:
runner: ${{ needs.select-env.outputs.runner }}
docker-image: ${{ needs.select-env.outputs.image }}
test-names: |
Adder
Kernels/Integer/Add/Regular
simulators: |
gvsoc
26 changes: 13 additions & 13 deletions .github/workflows/ci-platform-cortexm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,17 +36,17 @@ jobs:
runner: ${{ needs.select-env.outputs.runner }}
docker-image: ${{ needs.select-env.outputs.image }}
test-names: |
Adder
MultIO
test1DPad
test2DPad
testMatMul
testMatMulAdd
testMaxPool
testRQConv
testReduceSum
testReduceMean
testSlice
Kernels/Integer/Add/Regular
Kernels/Integer/Add/MultIO
Kernels/Integer/Pad/Regular_1D
Kernels/Integer/Pad/Regular_2D
Kernels/Integer/MatMul/Regular
Kernels/Integer/MatMul/Add
Kernels/Integer/MaxPool
Kernels/Integer/Conv/Regular_2D_RQ
Kernels/Integer/ReduceSum
Kernels/Integer/ReduceMean
Kernels/Integer/Slice

cortexm-models:
needs: select-env
Expand All @@ -55,5 +55,5 @@ jobs:
runner: ${{ needs.select-env.outputs.runner }}
docker-image: ${{ needs.select-env.outputs.image }}
test-names: |
simpleRegression
WaveFormer
Models/CNN_Linear2
Models/WaveFormer
156 changes: 99 additions & 57 deletions .github/workflows/ci-platform-generic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,50 +36,88 @@ jobs:
runner: ${{ needs.select-env.outputs.runner }}
docker-image: ${{ needs.select-env.outputs.image }}
test-names: |
Adder
MultIO
test1DConvolution
test2DConvolution
test1DDWConvolution
test2DDWConvolution
test1DPad
test2DPad
testGEMM
testMatMul
testMatMulAdd
testMaxPool
testRQConv
testRQMatMul
testReduceSum
testReduceMean
testSlice
testRequantizedDWConv
test2DRequantizedConv
iSoftmax
testFloatAdder
testFloatGEMM
testFloat2DConvolution
testFloat2DConvolutionBias
testFloat2DConvolutionZeroBias
testFloatLayerNorm
testFloatDiv
testFloat2DDWConvolution
testFloat2DDWConvolutionBias
testFloat2DDWConvolutionZeroBias
testFloatRelu
testFloatMaxPool
testFloatMatmul
testFloatReshapeWithSkipConnection
testFloatSoftmax
testFloatTranspose
testFloatMul
testFloatPowScalar
testFloatPowVector
testFloatSqrt
testFloatRMSNorm
Quant
Dequant
QuantizedLinear
Kernels/FP32/ReLU
Kernels/FP32/Softmax/Regular

Kernels/FP32/Add/Regular

Kernels/FP32/Conv/DW_2D_Bias
Kernels/FP32/Conv/DW_2D_NoBias
Kernels/FP32/Conv/DW_2D_ZeroValuedBias

Kernels/FP32/Conv/Regular_2D_Bias
Kernels/FP32/Conv/Regular_2D_NoBias
Kernels/FP32/Conv/Regular_2D_ZeroValuedBias

Kernels/FP32/Div
Kernels/FP32/GEMM/Regular
Kernels/FP32/MatMul
Kernels/FP32/MaxPool
Kernels/FP32/Mul

Kernels/FP32/LayerNorm
Kernels/FP32/RMSNorm

Kernels/FP32/Pow/Scalar
Kernels/FP32/Pow/Vector

Kernels/FP32/ReduceMean/KeepDims/Add_ReduceMean
Kernels/FP32/ReduceMean/KeepDims/Add_ReduceMean_Add
Kernels/FP32/ReduceMean/KeepDims/AllAxes
Kernels/FP32/ReduceMean/KeepDims/Axes1_2_3
Kernels/FP32/ReduceMean/KeepDims/Axes1_3
Kernels/FP32/ReduceMean/KeepDims/Axes2_1
Kernels/FP32/ReduceMean/KeepDims/Axis0
Kernels/FP32/ReduceMean/KeepDims/Axis2
Kernels/FP32/ReduceMean/KeepDims/ReduceMean_Add

Kernels/FP32/ReduceMean/NoKeepDims/Add_ReduceMean
Kernels/FP32/ReduceMean/NoKeepDims/Add_ReduceMean_Add
Kernels/FP32/ReduceMean/NoKeepDims/AllAxes
Kernels/FP32/ReduceMean/NoKeepDims/Axes1_2_3
Kernels/FP32/ReduceMean/NoKeepDims/Axes1_3
Kernels/FP32/ReduceMean/NoKeepDims/Axes2_1
Kernels/FP32/ReduceMean/NoKeepDims/Axis0
Kernels/FP32/ReduceMean/NoKeepDims/Axis2
Kernels/FP32/ReduceMean/NoKeepDims/ReduceMean_Add

Kernels/FP32/Reshape/SkipConnection
Kernels/FP32/Sqrt
Kernels/FP32/Transpose

Kernels/Integer/Softmax/Regular

Kernels/Integer/Add/MultIO
Kernels/Integer/Add/Regular

Kernels/Integer/Conv/DW_1D
Kernels/Integer/Conv/Regular_1D

Kernels/Integer/Conv/DW_2D
Kernels/Integer/Conv/Regular_2D

Kernels/Integer/GEMM/Regular

Kernels/Integer/MatMul/Add
Kernels/Integer/MatMul/Regular

Kernels/Integer/MaxPool

Kernels/Integer/Pad/Regular_1D
Kernels/Integer/Pad/Regular_2D

Kernels/Integer/ReduceMean
Kernels/Integer/ReduceSum
Kernels/Integer/Slice

Models/TinyViT/5M/Layers/FP32/ReduceMean

Kernels/Mixed/Dequant
Kernels/Mixed/Quant
Models/Transformer_DeepQuant
Kernels/Integer/Conv/DW_2D_RQ
Kernels/Integer/Conv/Regular_2D_RQ
Kernels/Integer/MatMul/Regular_RQ

generic-models:
needs: select-env
Expand All @@ -88,16 +126,20 @@ jobs:
runner: ${{ needs.select-env.outputs.runner }}
docker-image: ${{ needs.select-env.outputs.image }}
test-names: |
simpleRegression
WaveFormer
simpleCNN
ICCT
ICCT_ITA
ICCT_8
ICCT_ITA_8
miniMobileNet
miniMobileNetv2
CCT/CCT_1_16_16_8
CCT/CCT_2_32_32_128_Opset20
testFloatDemoTinyViT
Autoencoder1D
Models/Autoencoder1D

Models/CCT/FP32/CCT_1_16_16_8
Models/CCT/FP32/CCT_2_32_32_128_Opset20
Models/CCT/Int/ICCT
Models/CCT/Int/ICCT_8
Models/CCT/Int/ICCT_ITA
Models/CCT/Int/ICCT_ITA_8

Models/miniMobileNet
Models/miniMobileNetv2

Models/CNN_Linear1
Models/TinyViT/Demo
Models/WaveFormer

Models/CNN_Linear2
Loading
Loading