[onert] Add BulkPipelineBuffer for NPU buffer management (#16330) #1025
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
| name: Run ONERT Ubuntu Native Build | |
| on: | |
| push: | |
| branches: | |
| - master | |
| - release/* | |
| paths: | |
| - '.github/workflows/run-onert-native-build.yml' | |
| - 'nnfw' | |
| - 'Makefile.template' | |
| - 'runtime/**' | |
| - '!runtime/contrib/**' | |
| - '!runtime/infra/debian/**' | |
| - '!runtime/infra/gbs/**' | |
| - '!runtime/infra/python/**' | |
| - '!**/*.md' | |
| pull_request: | |
| branches: | |
| - master | |
| - release/* | |
| paths: | |
| - '.github/workflows/run-onert-native-build.yml' | |
| - 'nnfw' | |
| - 'Makefile.template' | |
| - 'runtime/**' | |
| - '!runtime/contrib/**' | |
| - '!runtime/infra/debian/**' | |
| - '!runtime/infra/gbs/**' | |
| - '!runtime/infra/python/**' | |
| - '!**/*.md' | |
| defaults: | |
| run: | |
| shell: bash | |
| # Cancel previous running jobs when pull request is updated | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| if: github.repository_owner == 'Samsung' | |
| strategy: | |
| # Release build test only on non arm32 platforms | |
| matrix: | |
| type: [ release ] | |
| ubuntu_code: [ jammy ] | |
| arch: [ x86_64, aarch64 ] | |
| include: | |
| - arch: x86_64 | |
| runner: one-x64-linux | |
| - arch: aarch64 | |
| runner: one-arm-linux | |
| runs-on: ${{ matrix.runner }} | |
| container: | |
| # Use test image: default image is not supporting arm64 yet | |
| image: samsungonedev.azurecr.io/nnfw/one-devtools:${{ matrix.ubuntu_code }} | |
| options: --user root | |
| env: | |
| TARGET_ARCH: ${{ matrix.arch }} | |
| BUILD_TYPE: ${{ matrix.type }} | |
| OPTIONS: "-DBUILD_ARMCOMPUTE=OFF" # Disable arm compute library | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Restore onecc external cache | |
| uses: actions/cache/restore@v4 | |
| with: | |
| path: externals | |
| key: external-onecc-${{ hashFiles('infra/cmake/packages/**/*.cmake') }} | |
| restore-keys: | | |
| external-onecc- | |
| - name: Restore externals cache | |
| uses: actions/cache/restore@v4 | |
| id: external-cache | |
| with: | |
| path: runtime/externals | |
| key: external-onert-${{ matrix.ubuntu_code }}-${{ hashFiles('runtime/infra/cmake/packages/**/*.cmake') }} | |
| restore-keys: | | |
| external-onert-${{ matrix.ubuntu_code }}- | |
| - name: Restore ccache cache | |
| uses: actions/cache/restore@v4 | |
| id: ccache-cache | |
| with: | |
| path: ~/.cache/ccache | |
| key: ccache-onert-${{ matrix.ubuntu_code }}-${{ matrix.arch }}-${{ matrix.type }}-${{ github.sha }} | |
| restore-keys: | | |
| ccache-onert-${{ matrix.ubuntu_code }}-${{ matrix.arch }}-${{ matrix.type }} | |
| - name: Build onert | |
| run: | | |
| make -f Makefile.template | |
| - name: Run test on native | |
| run: | | |
| ./Product/out/test/onert-test unittest | |
| ./Product/out/test/onert-test unittest --unittestdir=./Product/out/nnapi-gtest | |
| # Save cache on push to reduce the size of cache storage | |
| # ccache cache: only for master branch | |
| # externals cache: only for master branch and Release build and x86_64 | |
| - name: Save ccache cache | |
| uses: actions/cache/save@v4 | |
| if: github.event_name == 'push' && github.ref_name =='master' | |
| with: | |
| path: ~/.cache/ccache | |
| key: ${{ steps.ccache-cache.outputs.cache-primary-key }} | |
| - name: Save externals cache | |
| uses: actions/cache/save@v4 | |
| if: github.event_name == 'push' && github.ref_name =='master' && matrix.type =='release' && matrix.arch == 'x86_64' | |
| with: | |
| path: runtime/externals | |
| key: ${{ steps.external-cache.outputs.cache-primary-key }} |