Spaces:
Running on Zero
Running on Zero
| name: CI (cann) | |
| on: | |
| workflow_dispatch: # allows manual triggering | |
| push: | |
| branches: | |
| - master | |
| paths: [ | |
| '.github/workflows/build-cann.yml', | |
| '**/CMakeLists.txt', | |
| '**/.cmake', | |
| '**/*.h', | |
| '**/*.hpp', | |
| '**/*.c', | |
| '**/*.cpp' | |
| ] | |
| pull_request: | |
| types: [opened, synchronize, reopened] | |
| paths: [ | |
| '.github/workflows/build-cann.yml', | |
| 'ggml/src/ggml-cann/**' | |
| ] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }} | |
| cancel-in-progress: true | |
| env: | |
| GGML_NLOOP: 3 | |
| GGML_N_THREADS: 1 | |
| LLAMA_ARG_LOG_COLORS: 1 | |
| LLAMA_ARG_LOG_PREFIX: 1 | |
| LLAMA_ARG_LOG_TIMESTAMPS: 1 | |
| jobs: | |
| # TODO: this build is disabled to save Github Actions resources (https://github.com/ggml-org/llama.cpp/pull/23705) | |
| # in order to enable it again, we have to provision dedicated runners to run it | |
| # openEuler-latest-cann: | |
| # defaults: | |
| # run: | |
| # shell: bash -el {0} | |
| # strategy: | |
| # matrix: | |
| # arch: [x86, aarch64] | |
| # chip_type: ['910b', '310p'] | |
| # build: ['Release'] | |
| # use_acl_graph: ['on', 'off'] | |
| # exclude: | |
| # # 310P does not support USE_ACL_GRAPH=on | |
| # - chip_type: '310p' | |
| # use_acl_graph: 'on' | |
| # runs-on: ${{ matrix.arch == 'aarch64' && 'ubuntu-24.04-arm' || 'ubuntu-24.04' }} | |
| # steps: | |
| # - name: Checkout | |
| # uses: actions/checkout@v6 | |
| # with: | |
| # fetch-depth: 0 | |
| # | |
| # - name: Free up disk space | |
| # uses: ggml-org/free-disk-space@v1.3.1 | |
| # with: | |
| # tool-cache: true | |
| # | |
| # - name: Set container image | |
| # id: cann-image | |
| # run: | | |
| # image="ascendai/cann:${{ matrix.chip_type == '910b' && '8.5.0-910b-openeuler24.03-py3.11' || '8.5.0-310p-openeuler24.03-py3.11' }}" | |
| # echo "image=${image}" >> "${GITHUB_OUTPUT}" | |
| # | |
| # - name: Pull container image | |
| # run: docker pull "${{ steps.cann-image.outputs.image }}" | |
| # | |
| # - name: Build | |
| # env: | |
| # BUILD_TYPE: ${{ matrix.build }} | |
| # SOC_TYPE: ascend${{ matrix.chip_type }} | |
| # USE_ACL_GRAPH: ${{ matrix.use_acl_graph }} | |
| # run: | | |
| # HOST_UID=$(id -u) | |
| # HOST_GID=$(id -g) | |
| # | |
| # docker run --rm \ | |
| # -v "${PWD}:/workspace" \ | |
| # -w /workspace \ | |
| # -e SOC_TYPE=${SOC_TYPE} \ | |
| # -e BUILD_TYPE=${BUILD_TYPE} \ | |
| # -e USE_ACL_GRAPH=${USE_ACL_GRAPH} \ | |
| # "${{ steps.cann-image.outputs.image }}" \ | |
| # bash -lc ' | |
| # set -e | |
| # yum install -y --setopt=install_weak_deps=False --setopt=tsflags=nodocs git gcc gcc-c++ make cmake openssl-devel | |
| # yum clean all && rm -rf /var/cache/yum | |
| # git config --global --add safe.directory "/workspace" | |
| # export LD_LIBRARY_PATH=${ASCEND_TOOLKIT_HOME}/lib64:${ASCEND_TOOLKIT_HOME}/$(uname -m)-linux/devlib/:${LD_LIBRARY_PATH} | |
| # cmake -S . -B build \ | |
| # -DCMAKE_BUILD_TYPE=${BUILD_TYPE} \ | |
| # -DGGML_CANN=on \ | |
| # -DSOC_TYPE=${SOC_TYPE} \ | |
| # -DUSE_ACL_GRAPH=${USE_ACL_GRAPH} | |
| # cmake --build build -j $(nproc) | |
| # | |
| # chown -R '"${HOST_UID}"':'"${HOST_GID}"' /workspace/build | |
| # ' | |