[DRAFT] Deeploy for GAP9 Platform #1
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # SPDX-FileCopyrightText: 2025 ETH Zurich and University of Bologna | |
| # | |
| # SPDX-License-Identifier: Apache-2.0 | |
| --- | |
| name: CI • GAP9 (Tiled) | |
| "on": | |
| push: | |
| branches: | |
| - "**" | |
| tags: | |
| - "v*.*.*" | |
| pull_request: | |
| workflow_dispatch: | |
| inputs: | |
| docker_image_deeploy: | |
| description: "Deeploy Image to use" | |
| required: false | |
| default: "ghcr.io/pulp-platform/deeploy:devel" | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| select-env: | |
| uses: ./.github/workflows/_select-env.yml | |
| with: | |
| docker_image_deeploy: ${{ inputs.docker_image_deeploy }} | |
| gap9-kernels-tiled-singlebuffer-L2: | |
| needs: select-env | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| test-data: | |
| - name: "testMatMul" | |
| L1: [64000, 32000, 16000] | |
| - name: "test2DRequantizedConv" | |
| L1: [8000, 6000, 4000] | |
| - name: "test2DRequantizedStriddedPaddedConv" | |
| L1: [600] | |
| - name: "testRequantizedDWConv" | |
| L1: [2561] | |
| - name: "iSoftmax" | |
| L1: [800, 500, 300] | |
| - name: "testConcat" | |
| L1: [32000, 16000, 8000] | |
| - name: "testRMSNorm" | |
| L1: [2048, 1024, 512] | |
| - name: "Hardswish" | |
| L1: [750] | |
| - name: "RQHardswish" | |
| L1: [750] | |
| - name: "testFloatGEMM" | |
| L1: [8000] | |
| - name: "testFloat2DConvolution" | |
| L1: [1600] | |
| - name: "testFloat2DConvolutionBias" | |
| L1: [6600] | |
| - name: "testFloat2DConvolutionZeroBias" | |
| L1: [6600] | |
| - name: "testFloat2DDWConvolution" | |
| L1: [7200] | |
| - name: "testFloat2DDWConvolutionBias" | |
| L1: [7200] | |
| - name: "testFloat2DDWConvolutionZeroBias" | |
| L1: [7200] | |
| - name: "testFloatLayerNorm" | |
| L1: [2000] | |
| - name: "testFloatMaxPool" | |
| L1: [2000] | |
| - name: "testFloatMatmul" | |
| L1: [2000] | |
| - name: "testFloatRelu" | |
| L1: [2000] | |
| - name: "testFloatReshapeWithSkipConnection" | |
| L1: [1400] | |
| - name: "testFloatSoftmax" | |
| L1: [4000] | |
| - name: "testFloatTranspose" | |
| L1: [2000] | |
| - name: "testFloatMul" | |
| L1: [2000] | |
| - name: "largeFloatAdd" | |
| L1: [220000] | |
| - name: "testRQGEMMwBatch" | |
| L1: [20000] | |
| - name: "testMatMulBatch" | |
| L1: [20000] | |
| uses: ./.github/workflows/_runner-gap9-tiled.yml | |
| with: | |
| runner: ${{ needs.select-env.outputs.runner }} | |
| docker-image: ${{ needs.select-env.outputs.image }} | |
| test-name: ${{ matrix.test-data.name }} | |
| num-cores: 8 | |
| L1: ${{ toJson(matrix.test-data.L1) }} | |
| gap9-kernels-tiled-doublebuffer-L2: | |
| needs: select-env | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| test-data: | |
| - name: "testMatMul" | |
| L1: [64000, 32000, 16000] | |
| - name: "test2DRequantizedConv" | |
| L1: [8000, 6000, 5000] | |
| - name: "testRequantizedDWConv" | |
| L1: [5121] | |
| - name: "iSoftmax" | |
| L1: [1600, 1000, 600] | |
| - name: "testConcat" | |
| L1: [64000, 32000, 16000] | |
| - name: "testRMSNorm" | |
| L1: [4096, 2048, 1024] | |
| - name: "Hardswish" | |
| L1: [750] | |
| - name: "RQHardswish" | |
| L1: [800] | |
| - name: "testFloatGEMM" | |
| L1: [8000] | |
| - name: "testFloat2DConvolution" | |
| L1: [2000] | |
| - name: "testFloat2DConvolutionBias" | |
| L1: [8800] | |
| - name: "testFloat2DConvolutionZeroBias" | |
| L1: [8800] | |
| - name: "testFloat2DDWConvolution" | |
| L1: [9800] | |
| - name: "testFloat2DDWConvolutionBias" | |
| L1: [10000] | |
| - name: "testFloat2DDWConvolutionZeroBias" | |
| L1: [9800] | |
| - name: "testFloatLayerNorm" | |
| L1: [2000] | |
| - name: "testFloatMaxPool" | |
| L1: [5000] | |
| - name: "testFloatMatmul" | |
| L1: [5000] | |
| - name: "testFloatRelu" | |
| L1: [20] | |
| - name: "testFloatReshapeWithSkipConnection" | |
| L1: [2600] | |
| - name: "testFloatSoftmax" | |
| L1: [8000] | |
| - name: "testFloatTranspose" | |
| L1: [2000] | |
| - name: "testFloatMul" | |
| L1: [2000] | |
| uses: ./.github/workflows/_runner-gap9-tiled.yml | |
| with: | |
| runner: ${{ needs.select-env.outputs.runner }} | |
| docker-image: ${{ needs.select-env.outputs.image }} | |
| test-name: ${{ matrix.test-data.name }} | |
| num-cores: 8 | |
| L1: ${{ toJson(matrix.test-data.L1) }} | |
| double-buffer: true | |
| gap9-models-tiled-singlebuffer-L2: | |
| needs: select-env | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| test-data: | |
| - name: "simpleRegression" | |
| L1: [45000, 30000, 15000] | |
| - name: "miniMobileNet" | |
| L1: [60000, 12000, 6000, 3000] | |
| - name: "miniMobileNetv2" | |
| L1: [60000, 16000, 12000, 8000] | |
| - name: "Attention" | |
| L1: [60000, 10000, 5000] | |
| - name: "MLPerf/KeywordSpotting" | |
| L1: [64000] | |
| - name: "MLPerf/ImageClassification" | |
| L1: [64000] | |
| - name: "MLPerf/AnomalyDetection" | |
| L1: [64000] | |
| num-cores: [8] | |
| uses: ./.github/workflows/_runner-gap9-tiled.yml | |
| with: | |
| runner: ${{ needs.select-env.outputs.runner }} | |
| docker-image: ${{ needs.select-env.outputs.image }} | |
| test-name: ${{ matrix.test-data.name }} | |
| num-cores: ${{ matrix.num-cores }} | |
| L1: ${{ toJson(matrix.test-data.L1) }} | |
| gap9-models-tiled-doublebuffer-L2: | |
| needs: select-env | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| test-data: | |
| - name: "simpleRegression" | |
| L1: [60000, 45000, 30000] | |
| - name: "miniMobileNet" | |
| L1: [60000, 24000, 12000, 6000] | |
| - name: "miniMobileNetv2" | |
| L1: [60000, 32000, 24000, 16000] | |
| - name: "Attention" | |
| L1: [60000, 20000, 10000, 5000] | |
| num-cores: [8] | |
| double-buffer: [true] | |
| uses: ./.github/workflows/_runner-gap9-tiled.yml | |
| with: | |
| runner: ${{ needs.select-env.outputs.runner }} | |
| docker-image: ${{ needs.select-env.outputs.image }} | |
| test-name: ${{ matrix.test-data.name }} | |
| num-cores: ${{ matrix.num-cores }} | |
| L1: ${{ toJson(matrix.test-data.L1) }} | |
| double-buffer: ${{ matrix.double-buffer }} |