@@ -756,6 +756,97 @@ jobs:
756756 vtr_flow/**/parse_results*.txt
757757
758758
759+ RegressionWithMosaic :
760+ runs-on : ubuntu-24.04
761+ needs : [BuildVTR]
762+ strategy :
763+ fail-fast : false
764+ matrix :
765+ include : [
766+ {
767+ name : ' Mosaic_regression' ,
768+ suite : ' vtr_reg_basic_mosaic' ,
769+ extra_pkgs : ' verilator'
770+ }
771+ ]
772+ name : ' R: ${{ matrix.name }}'
773+ steps :
774+
775+ - uses : actions/setup-python@v7
776+ with :
777+ python-version : 3.12.3
778+
779+ - uses : actions/checkout@v7
780+ with :
781+ submodules : ' true'
782+
783+ - name : Get number of CPU cores
784+ uses : SimenB/github-actions-cpu-cores@v3
785+ id : cpu-cores
786+
787+ - name : Install dependencies
788+ run : ./install_apt_packages.sh
789+
790+ - name : Install Extra Dependencies
791+ if : ${{ matrix.extra_pkgs != '' }}
792+ run : |
793+ sudo apt update
794+ sudo apt install -y ${{ matrix.extra_pkgs }}
795+
796+ - name : Install Python Requirements
797+ run : |
798+ pip install -r requirements.txt
799+
800+ - name : Download Build Artifact
801+ uses : actions/download-artifact@v8
802+ with :
803+ name : build-release.tar.gz
804+
805+ - name : Unpack Build
806+ shell : bash
807+ run : |
808+ tar -xvzf build.tar.gz
809+
810+ - name : Test
811+ timeout-minutes : 60
812+ run : |
813+ ./run_reg_test.py ${{ matrix.suite }} -show_failures -j${{ steps.cpu-cores.outputs.count}}
814+
815+ - name : Require mosaic verilator-check pass
816+ timeout-minutes : 5
817+ run : |
818+ python3 mosaic/scripts/verify_regression_vcheck.py --suite ${{ matrix.suite }}
819+
820+ - name : Compare Parmys and Mosaic hardblock BLIF models
821+ timeout-minutes : 20
822+ run : |
823+ python3 mosaic/scripts/compare_frontend_blif_models.py --run \
824+ --circuit vtr_flow/benchmarks/verilog/diffeq1.v \
825+ --arch vtr_flow/arch/timing/k6_frac_N10_frac_chain_mem32K_40nm.xml \
826+ --work-dir mosaic_blif_model_compare
827+
828+ - name : Upload regression run files
829+ if : ${{ !cancelled() }}
830+ uses : actions/upload-artifact@v7
831+ with :
832+ name : ${{matrix.name}}_run_files
833+ path : |
834+ vtr_flow/**/*.out
835+ # vtr_flow/**/*.blif # Removed since it was taking too much space and was hardly used.
836+ vtr_flow/**/*.p
837+ vtr_flow/**/*.net
838+ vtr_flow/**/*.r
839+
840+ - name : Upload regression results
841+ if : ${{ !cancelled() }}
842+ uses : actions/upload-artifact@v7
843+ with :
844+ name : ${{matrix.name}}_results
845+ path : |
846+ vtr_flow/**/*.log
847+ vtr_flow/**/parse_results*.txt
848+
849+
759850 Sanitized :
760851 runs-on : ubuntu-24.04
761852 strategy :
0 commit comments