From: sudhiarm Date: Tue, 11 Nov 2025 15:58:05 +0000 (+0000) Subject: ci: add Arm-hosted Graviton4 runner (#17021) X-Git-Tag: upstream/0.0.7446~420 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=3fe36c32389ade876ec505f32df08f5121cf597f;p=pkg%2Fggml%2Fsources%2Fllama.cpp ci: add Arm-hosted Graviton4 runner (#17021) * ci: add Arm-hosted Graviton4 runner * ci: add missing dependencies for graviton4 build * ci: enable LFS checkout on graviton4 * ci: move git-lfs install to dependencies in Graviton4 workflow --- diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 36084c55..0112fc32 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1651,3 +1651,50 @@ jobs: run: | GG_BUILD_KLEIDIAI=1 GG_BUILD_EXTRA_TESTS_0=1 bash ./ci/run.sh ./tmp/results ./tmp/mnt + ggml-ci-arm64-graviton4-kleidiai: + runs-on: ah-ubuntu_22_04-c8g_8x + + steps: + - name: Clone + id: checkout + uses: actions/checkout@v4 + + - name: Dependencies + id: depends + run: | + set -euxo pipefail + sudo apt-get update + sudo DEBIAN_FRONTEND=noninteractive NEEDRESTART_MODE=a \ + apt-get install -y \ + build-essential \ + libcurl4-openssl-dev \ + python3-venv \ + gpg \ + wget \ + time \ + git-lfs + + git lfs install + + # install the latest cmake + sudo install -d /usr/share/keyrings + wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc \ + | gpg --dearmor \ + | sudo tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null + echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ jammy main' \ + | sudo tee /etc/apt/sources.list.d/kitware.list + sudo apt-get update + sudo apt-get install -y cmake + + - name: ccache + uses: ggml-org/ccache-action@v1.2.16 + with: + key: ggml-ci-arm64-graviton4-kleidiai + evict-old-files: 1d + + - name: Test + id: ggml-ci + run: | + GG_BUILD_KLEIDIAI=1 \ + GG_BUILD_EXTRA_TESTS_0=1 \ + bash ./ci/run.sh ./tmp/results ./tmp/mnt diff --git a/ci/run.sh b/ci/run.sh index 1a480697..3fec8e91 100755 --- a/ci/run.sh +++ b/ci/run.sh @@ -121,7 +121,12 @@ fi if [ -n "${GG_BUILD_KLEIDIAI}" ]; then echo ">>===== Enabling KleidiAI support" - CANDIDATES=("armv9-a+dotprod+i8mm" "armv8.6-a+dotprod+i8mm" "armv8.2-a+dotprod") + CANDIDATES=( + "armv9-a+dotprod+i8mm+sve2" + "armv9-a+dotprod+i8mm" + "armv8.6-a+dotprod+i8mm" + "armv8.2-a+dotprod" + ) CPU="" for cpu in "${CANDIDATES[@]}"; do