Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
170bacc
Merge branch 'feature/onnx-passes' into switch/new_frontend
fpjentzsch Oct 17, 2025
aef2b04
[CI] Run all regression tests on every commit
fpjentzsch Oct 17, 2025
630d49e
Switch all flows to new onnx-passes frontend
fpjentzsch Oct 17, 2025
de45f1d
Merge branch 'feature/onnx-passes' into switch/new_frontend
fpjentzsch Oct 17, 2025
e69c6cf
Merge branch 'feature/onnx-passes' into switch/new_frontend
fpjentzsch Nov 7, 2025
2ab623c
Merge branch 'feature/onnx-passes' into switch/new_frontend
fpjentzsch Nov 7, 2025
e300cb1
Enable PASSES_FRONTEND verification for Transformers
fpjentzsch Nov 7, 2025
c30cbd7
Merge branch 'dev' into switch/new_frontend
fpjentzsch Nov 11, 2025
b591514
Merge branch 'feature/onnx-passes' into switch/new_frontend
fpjentzsch Nov 11, 2025
6728dc7
Merge branch 'transformer' into switch/new_frontend
fpjentzsch Nov 12, 2025
c73b0e7
Switch from old to new Transformers
fpjentzsch Nov 12, 2025
7448bce
[Bench] Always set verification i/o paths if available
fpjentzsch Nov 13, 2025
43b1354
Disable verbose output for onnx-passes
fpjentzsch Nov 13, 2025
704c064
Attempt to apply Slurm onnxruntime workaround to onnx-passes
fpjentzsch Nov 13, 2025
63d7b61
Use exclusive nodes to work around onnxruntime issue, always run live…
fpjentzsch Nov 13, 2025
e4e9453
Use pre-streamlined models for Transformers as step_passes_frontend i…
fpjentzsch Nov 13, 2025
73eaf0e
[Bench] Fix verification disable
fpjentzsch Nov 14, 2025
2bef817
Merge branch 'transformer' into switch/new_frontend
fpjentzsch Nov 19, 2025
8bdadf6
Set intrumentation timestamp buffer to 1k depth
fpjentzsch Nov 19, 2025
f3e6151
[CI] Move Transformer target_fps setting from base to exp config
fpjentzsch Dec 4, 2025
b9ad34b
Skip entire ad-hoc folding step if no target defined
fpjentzsch Dec 4, 2025
7e1d675
Merge branch 'dev' into switch/new_frontend
fpjentzsch Feb 4, 2026
c34611a
Merge branch 'dev' into switch/new_frontend
fpjentzsch Feb 6, 2026
2390850
Revert "Attempt to apply Slurm onnxruntime workaround to onnx-passes"
fpjentzsch Feb 6, 2026
8b839b1
Revert "Use exclusive nodes to work around onnxruntime issue, always …
fpjentzsch Feb 6, 2026
e42cfd8
Delete removed ci cfg file
fpjentzsch Feb 6, 2026
6ef4216
Remove unused import
fpjentzsch Feb 6, 2026
5ff9e92
Switch Transformer flow to use (only) step_passes_frontend
fpjentzsch Feb 6, 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
5 changes: 3 additions & 2 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -220,9 +220,10 @@ Bench (Basic):
pipeline_variables: true
variables:
PARENT_PIPELINE_ID: $CI_PIPELINE_ID
PARALLEL_JOBS: "8"
parallel:
matrix:
- BENCH_CFG: [regression_basic]
- BENCH_CFG: [regression_basic, regression_extended, regression_transformer]

Bench (Extended):
stage: test
Expand All @@ -244,4 +245,4 @@ Bench (Extended):
PARALLEL_JOBS: "8"
parallel:
matrix:
- BENCH_CFG: [regression_extended, regression_transformer, microbenchmark_basic]
- BENCH_CFG: [microbenchmark_basic]
20 changes: 4 additions & 16 deletions ci/cfg/live_fifosizing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,10 +114,7 @@
# benchmark model ("dummy")
{
"dut": ["transformer"],
#"model_dir": ["models/transformer/finn-transformers/benchmark"],
"model_path": ["models/transformer/finn-transformers/benchmark/streamlined.onnx"],
"verify_input_npy": ["models/transformer/finn-transformers/benchmark/inp.npy"],
"verify_expected_output_npy": ["models/transformer/finn-transformers/benchmark/out.npy"],
"model_dir": ["models/transformer/finn-transformers/benchmark"],
"live_fifo_sizing": [True],
"generate_outputs": [["bitfile", "pynq_driver", "deployment_package"]],
"target_fps": [1000],
Expand All @@ -126,10 +123,7 @@
# language model
{
"dut": ["transformer"],
#"model_dir": ["models/transformer/finn-transformers/language"],
"model_path": ["models/transformer/finn-transformers/language/streamlined.onnx"],
"verify_input_npy": ["models/transformer/finn-transformers/language/inp.npy"],
"verify_expected_output_npy": ["models/transformer/finn-transformers/language/out.npy"],
"model_dir": ["models/transformer/finn-transformers/language"],
"live_fifo_sizing": [True],
"generate_outputs": [["bitfile", "pynq_driver", "deployment_package"]],
"target_fps": [1000],
Expand All @@ -138,10 +132,7 @@
# radioml model
{
"dut": ["transformer"],
#"model_dir": ["models/transformer/finn-transformers/radioml"],
"model_path": ["models/transformer/finn-transformers/radioml/streamlined.onnx"],
"verify_input_npy": ["models/transformer/finn-transformers/radioml/inp.npy"],
"verify_expected_output_npy": ["models/transformer/finn-transformers/radioml/out.npy"],
"model_dir": ["models/transformer/finn-transformers/radioml"],
"live_fifo_sizing": [True],
"generate_outputs": [["bitfile", "pynq_driver", "deployment_package"]],
"target_fps": [1000],
Expand All @@ -150,10 +141,7 @@
# vision model
{
"dut": ["transformer"],
#"model_dir": ["models/transformer/finn-transformers/vision"],
"model_path": ["models/transformer/finn-transformers/vision/streamlined.onnx"],
"verify_input_npy": ["models/transformer/finn-transformers/vision/inp.npy"],
"verify_expected_output_npy": ["models/transformer/finn-transformers/vision/out.npy"],
"model_dir": ["models/transformer/finn-transformers/vision"],
"live_fifo_sizing": [True],
"generate_outputs": [["bitfile", "pynq_driver", "deployment_package"]],
"target_fps": [1000],
Expand Down
20 changes: 4 additions & 16 deletions ci/cfg/regression_transformer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,7 @@
# benchmark model ("dummy")
{
"dut": ["transformer"],
#"model_dir": ["models/transformer/finn-transformers/benchmark"],
"model_path": ["models/transformer/finn-transformers/benchmark/streamlined.onnx"],
"verify_input_npy": ["models/transformer/finn-transformers/benchmark/inp.npy"],
"verify_expected_output_npy": ["models/transformer/finn-transformers/benchmark/out.npy"],
"model_dir": ["models/transformer/finn-transformers/benchmark"],
"generate_outputs": [["estimate_reports", "bitfile", "pynq_driver", "deployment_package"]],
"target_fps": ["None"],
"auto_fifo_depths": [False],
Expand All @@ -16,10 +13,7 @@
# language model
{
"dut": ["transformer"],
#"model_dir": ["models/transformer/finn-transformers/language"],
"model_path": ["models/transformer/finn-transformers/language/streamlined.onnx"],
"verify_input_npy": ["models/transformer/finn-transformers/language/inp.npy"],
"verify_expected_output_npy": ["models/transformer/finn-transformers/language/out.npy"],
"model_dir": ["models/transformer/finn-transformers/language"],
"generate_outputs": [["estimate_reports", "bitfile", "pynq_driver", "deployment_package"]],
"target_fps": ["None"],
"auto_fifo_depths": [False],
Expand All @@ -29,10 +23,7 @@
# radioml model
{
"dut": ["transformer"],
#"model_dir": ["models/transformer/finn-transformers/radioml"],
"model_path": ["models/transformer/finn-transformers/radioml/streamlined.onnx"],
"verify_input_npy": ["models/transformer/finn-transformers/radioml/inp.npy"],
"verify_expected_output_npy": ["models/transformer/finn-transformers/radioml/out.npy"],
"model_dir": ["models/transformer/finn-transformers/radioml"],
"generate_outputs": [["estimate_reports", "bitfile", "pynq_driver", "deployment_package"]],
"target_fps": ["None"],
"auto_fifo_depths": [False],
Expand All @@ -42,10 +33,7 @@
# vision model
{
"dut": ["transformer"],
#"model_dir": ["models/transformer/finn-transformers/vision"],
"model_path": ["models/transformer/finn-transformers/vision/streamlined.onnx"],
"verify_input_npy": ["models/transformer/finn-transformers/vision/inp.npy"],
"verify_expected_output_npy": ["models/transformer/finn-transformers/vision/out.npy"],
"model_dir": ["models/transformer/finn-transformers/vision"],
"generate_outputs": [["estimate_reports", "bitfile", "pynq_driver", "deployment_package"]],
"target_fps": ["None"],
"auto_fifo_depths": [False],
Expand Down
4 changes: 1 addition & 3 deletions src/finn/benchmarking/dut/bnn-pynq.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,7 @@
steps:
- finn.builder.custom_step_library.general.add_preproc_divide_by_255 # Custom step
- finn.builder.custom_step_library.general.add_postproc_top1 # Custom step
- step_qonnx_to_finn
- step_tidy_up
- step_streamline
- step_passes_frontend
- step_convert_to_hw
- step_create_dataflow_partition
- step_specialize_layers
Expand Down
4 changes: 1 addition & 3 deletions src/finn/benchmarking/dut/gtsrb.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,7 @@ specialize_layers_config_file: models/gtsrb/gtsrb_specialize_layers.json
steps:
- finn.builder.custom_step_library.general.add_preproc_divide_by_255 # Custom step
- finn.builder.custom_step_library.general.add_postproc_top1 # Custom step
- step_qonnx_to_finn
- step_tidy_up
- step_streamline
- step_passes_frontend
- step_convert_to_hw
- step_create_dataflow_partition
- step_specialize_layers
Expand Down
4 changes: 1 addition & 3 deletions src/finn/benchmarking/dut/kws.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,7 @@ specialize_layers_config_file: models/kws/kws_specialize_layers.json

steps:
- finn.builder.custom_step_library.general.add_postproc_top1 # Custom step
- step_qonnx_to_finn
- step_tidy_up
- step_streamline
- step_passes_frontend
- step_convert_to_hw
- step_create_dataflow_partition
- step_specialize_layers
Expand Down
3 changes: 1 addition & 2 deletions src/finn/benchmarking/dut/mobilenetv1.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@ folding_config_file: models/mobilenetv1/ZCU102_folding_config_live_fifo.json
specialize_layers_config_file: models/mobilenetv1/ZCU102_specialize_layers.json

steps:
- finn.builder.custom_step_library.mobilenet.step_mobilenet_streamline # Custom step
- finn.builder.custom_step_library.mobilenet.step_mobilenet_lower_convs # Custom step
- step_passes_frontend
- finn.builder.custom_step_library.mobilenet.step_mobilenet_convert_to_hw_layers_separate_th # Custom step
- step_create_dataflow_partition
- step_specialize_layers
Expand Down
8 changes: 1 addition & 7 deletions src/finn/benchmarking/dut/transformer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,7 @@ specialize_layers_config_file: src/finn/benchmarking/dut/transformer_specializat

# Sequence of steps to transform, optimize and build the accelerator
steps:
#- step_passes_frontend
# TODO: broken with step_passes_frontend, use pre-streamlined model instead
- finn.builder.passes.export
# Default FINN frontend step sequence (TODO: remove after new frontend is complete)
- step_qonnx_to_finn
- step_tidy_up
- step_streamline
- step_passes_frontend
# Customized adhoc hardware conversion step: Includes inferring the fused
# operator for scaled dot-product attention
- finn.builder.custom_step_library.transformer_adhoc.step_convert_to_hw
Expand Down
4 changes: 1 addition & 3 deletions src/finn/benchmarking/dut/vgg10.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,7 @@ folding_config_file: models/vgg10/ZCU104_folding_config.json
specialize_layers_config_file: models/vgg10/ZCU104_specialize_layers.json

steps:
- step_tidy_up
- finn.builder.custom_step_library.conv1d.step_pre_streamline # Custom step
- step_streamline
- step_passes_frontend
- step_convert_to_hw
- finn.builder.custom_step_library.conv1d.step_convert_final_layers # Custom step
- step_create_dataflow_partition
Expand Down
8 changes: 2 additions & 6 deletions src/finn/builder/build_dataflow_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -147,9 +147,7 @@ class VerificationStepType(str, Enum):
#: specified order. Use the `steps` as part of build config to restrict which
#: steps will be run.
default_build_dataflow_steps = [
"step_qonnx_to_finn",
"step_tidy_up",
"step_streamline",
"step_passes_frontend",
"step_convert_to_hw",
"step_create_dataflow_partition",
"step_specialize_layers",
Expand All @@ -171,9 +169,7 @@ class VerificationStepType(str, Enum):

#: List of steps to run for an estimate-only (no synthesis) dataflow build
estimate_only_dataflow_steps = [
"step_qonnx_to_finn",
"step_tidy_up",
"step_streamline",
"step_passes_frontend",
"step_convert_to_hw",
"step_create_dataflow_partition",
"step_specialize_layers",
Expand Down