@@ -150,34 +150,21 @@ jobs:
150150 ubuntu-22-arm64 :
151151 if : ${{ github.event_name == 'push' || github.event_name == 'pull_request' ||
152152 github.event.inputs.run_type == 'full-ci' }}
153- runs-on : ubuntu-22.04
154-
155- strategy :
156- fail-fast : false
157- matrix :
158- arch : [linux/arm64]
153+ runs-on : ubuntu-22.04-arm
159154
160155 steps :
161156 - name : Clone
162157 uses : actions/checkout@v6
163158
164- - name : Set up QEMU
165- uses : docker/setup-qemu-action@v3
166-
167- - name : Build ${{ matrix.arch }}
159+ - name : Install dependencies
168160 run : |
169- docker run --platform ${{ matrix.arch }} --rm \
170- -v ${{ github.workspace }}:/workspace \
171- -w /workspace ${{ env.ubuntu_image }} /bin/sh -c '
172- set -e
173- export DEBIAN_FRONTEND=noninteractive
174- sed -i "s|archive.ubuntu.com|mirrors.kernel.org|g" /etc/apt/sources.list
175- sed -i "s|security.ubuntu.com|mirrors.kernel.org|g" /etc/apt/sources.list
161+ sudo apt-get update
162+ sudo apt-get install -y build-essential libsdl2-dev cmake git
176163
177- apt update
178- apt install -y build-essential libsdl2-dev cmake git
179- cmake -B build -DGGML_NATIVE=OFF -DGGML_CPU_ARM_ARCH=armv8-a
180- cmake --build build --config Release -j $(nproc)'
164+ - name : Build
165+ run : |
166+ cmake -B build -DGGML_NATIVE=OFF -DGGML_CPU_ARM_ARCH=armv8-a
167+ cmake --build build --config Release -j $(nproc)
181168
182169 ubuntu-22-arm-v7 :
183170 if : ${{ github.event_name == 'push' || github.event_name == 'pull_request' ||
@@ -305,36 +292,34 @@ jobs:
305292 ubuntu-22-gcc-arm64 :
306293 if : ${{ github.event_name == 'push' || github.event_name == 'pull_request' ||
307294 github.event.inputs.run_type == 'full-ci' }}
308- runs-on : ubuntu-22.04
295+ runs-on : ubuntu-22.04-arm
309296
310297 strategy :
311298 fail-fast : false
312299 matrix :
313300 build : [Debug, Release]
314- arch : [linux/arm64]
315301
316302 steps :
317303 - name : Clone
318304 uses : actions/checkout@v6
319305
320- - name : Set up QEMU
321- uses : docker/setup-qemu-action@v3
306+ - name : Install dependencies
307+ run : |
308+ sudo apt-get update
309+ sudo apt-get install -y build-essential cmake libsdl2-dev git
322310
323- - name : Build ${{ matrix.arch }}
311+ - name : Configure CMake
324312 run : |
325- docker run --platform ${{ matrix.arch }} --rm \
326- -v ${{ github.workspace }}:/workspace \
327- -w /workspace ${{ env.ubuntu_image }} /bin/sh -c '
328- set -e
329- export DEBIAN_FRONTEND=noninteractive
330- sed -i "s|archive.ubuntu.com|mirrors.kernel.org|g" /etc/apt/sources.list
331- sed -i "s|security.ubuntu.com|mirrors.kernel.org|g" /etc/apt/sources.list
313+ cmake . \
314+ -DWHISPER_SDL2=ON \
315+ -DCMAKE_BUILD_TYPE=${{ matrix.build }} \
316+ -DGGML_NATIVE=OFF \
317+ -DGGML_CPU_ARM_ARCH=armv8-a
332318
333- apt update
334- apt install -y build-essential cmake libsdl2-dev git
335- cmake . -DWHISPER_SDL2=ON -DCMAKE_BUILD_TYPE=${{ matrix.build }} -DGGML_NATIVE=OFF -DGGML_CPU_ARM_ARCH=armv8-a
336- make
337- ctest -L gh --output-on-failure'
319+ - name : Build and Test
320+ run : |
321+ make
322+ ctest -L gh --output-on-failure
338323
339324 ubuntu-22-gcc-arm-v7 :
340325 if : ${{ github.event_name == 'push' || github.event_name == 'pull_request' ||
@@ -382,7 +367,7 @@ jobs:
382367 # arch: [linux/amd64, linux/arm64, linux/arm/v7, linux/ppc64le]
383368 # TODO: arm/v7 disabled due to clang bug
384369 # https://github.com/ggerganov/whisper.cpp/actions/runs/9657764109/job/26637633042?pr=2256#step:4:1990
385- arch : [linux/amd64, linux/arm64, linux/ ppc64le]
370+ arch : [linux/amd64, linux/ppc64le]
386371
387372 steps :
388373 - name : Clone
@@ -407,6 +392,36 @@ jobs:
407392 make
408393 ctest -L gh --output-on-failure'
409394
395+ ubuntu-22-clang-arm64 :
396+ if : ${{ github.event_name == 'push' || github.event_name == 'pull_request' ||
397+ github.event.inputs.run_type == 'full-ci' }}
398+ runs-on : ubuntu-22.04-arm
399+
400+ strategy :
401+ fail-fast : false
402+ matrix :
403+ build : [Debug, Release]
404+
405+ steps :
406+ - name : Clone
407+ uses : actions/checkout@v6
408+
409+ - name : Install dependencies
410+ run : |
411+ sudo apt-get update
412+ sudo apt-get install -y clang build-essential cmake libsdl2-dev git
413+
414+ - name : Build and Test
415+ run : |
416+ cmake . -DWHISPER_SDL2=ON \
417+ -DCMAKE_BUILD_TYPE=${{ matrix.build }} \
418+ -DCMAKE_CXX_COMPILER=clang++ \
419+ -DCMAKE_C_COMPILER=clang \
420+ -DGGML_NATIVE=OFF \
421+ -DGGML_CPU_ARM_ARCH=armv8-a
422+ make
423+ ctest -L gh --output-on-failure
424+
410425 ubuntu-22-gcc-sanitized :
411426 if : ${{ github.event_name == 'push' || github.event_name == 'pull_request' ||
412427 github.event.inputs.run_type == 'full-ci' }}
@@ -416,32 +431,23 @@ jobs:
416431 fail-fast : false
417432 matrix :
418433 sanitizer : [ADDRESS, THREAD, UNDEFINED]
419- arch : [linux/amd64]
420434
421435 steps :
422436 - name : Clone
423437 uses : actions/checkout@v6
424438
425- - name : Set up QEMU
426- uses : docker/setup-qemu-action@v3
427-
428- - name : Build ${{ matrix.arch }}
439+ - name : Install dependencies
429440 run : |
430- docker run --platform ${{ matrix.arch }} --rm \
431- -v ${{ github.workspace }}:/workspace \
432- -w /workspace ${{ env.ubuntu_image }} /bin/sh -c '
433- set -e
434- export DEBIAN_FRONTEND=noninteractive
435- sed -i "s|archive.ubuntu.com|mirrors.kernel.org|g" /etc/apt/sources.list
436- sed -i "s|security.ubuntu.com|mirrors.kernel.org|g" /etc/apt/sources.list
441+ sudo apt-get update
442+ sudo apt-get install -y build-essential cmake git
437443
438- apt update
439- apt install -y build-essential cmake git
440- cmake . -DCMAKE_BUILD_TYPE=Debug \
441- -DWHISPER_SANITIZE_${{ matrix.sanitizer }}=ON \
442- -DGGML_OPENMP=OFF
443- make
444- ctest -L gh --output-on-failure'
444+ - name : Build and Test
445+ run : |
446+ cmake . -DCMAKE_BUILD_TYPE=Debug \
447+ -DWHISPER_SANITIZE_${{ matrix.sanitizer }}=ON \
448+ -DGGML_OPENMP=OFF
449+ make
450+ ctest -L gh --output-on-failure
445451
446452 ubuntu-22-cmake-sycl :
447453 if : ${{ github.event_name == 'push' || github.event_name == 'pull_request' ||
0 commit comments