|
| 1 | +# CI Workflow - Modified to disable coverage-like runs |
| 2 | +# Changes made: |
| 3 | +# 1. Disabled sanitizer builds (ubuntu-latest-cmake-sanitizer) - they add instrumentation |
| 4 | +# 2. Disabled debug testing with leaks in macOS builds |
| 5 | +# 3. Reduced automatic trigger paths to minimize runs |
| 6 | +# 4. Set explicit Release build type to avoid debug instrumentation |
1 | 7 | name: CI |
2 | 8 |
|
3 | 9 | on: |
4 | 10 | workflow_dispatch: # allows manual triggering |
| 11 | + # Reduced automatic triggers to minimize coverage-like runs |
5 | 12 | push: |
6 | 13 | branches: |
7 | 14 | - master |
8 | 15 | paths: [ |
9 | 16 | '.github/workflows/build.yml', |
10 | | - '.github/workflows/build-linux-cross.yml', |
11 | | - '.github/workflows/build-cmake-pkg.yml', |
12 | 17 | '**/CMakeLists.txt', |
13 | | - '**/.cmake', |
14 | 18 | '**/*.h', |
15 | 19 | '**/*.hpp', |
16 | 20 | '**/*.c', |
17 | 21 | '**/*.cpp', |
18 | 22 | '**/*.cu', |
19 | | - '**/*.cuh', |
20 | | - '**/*.swift', |
21 | | - '**/*.m', |
22 | | - '**/*.metal', |
23 | | - '**/*.comp' |
| 23 | + '**/*.cuh' |
| 24 | + # Removed some paths to reduce trigger frequency |
24 | 25 | ] |
25 | 26 |
|
26 | 27 | pull_request: |
27 | 28 | types: [opened, synchronize, reopened] |
28 | 29 | paths: [ |
29 | 30 | '.github/workflows/build.yml', |
30 | | - '.github/workflows/build-linux-cross.yml', |
31 | | - '.github/workflows/build-cmake-pkg.yml', |
32 | 31 | '**/CMakeLists.txt', |
33 | | - '**/.cmake', |
34 | 32 | '**/*.h', |
35 | 33 | '**/*.hpp', |
36 | 34 | '**/*.c', |
37 | 35 | '**/*.cpp', |
38 | 36 | '**/*.cu', |
39 | | - '**/*.cuh', |
40 | | - '**/*.swift', |
41 | | - '**/*.m', |
42 | | - '**/*.metal', |
43 | | - '**/*.comp' |
| 37 | + '**/*.cuh' |
| 38 | + # Removed some paths to reduce trigger frequency |
44 | 39 | ] |
45 | 40 |
|
46 | 41 | concurrency: |
@@ -85,10 +80,12 @@ jobs: |
85 | 80 | -DLLAMA_FATAL_WARNINGS=ON \ |
86 | 81 | -DGGML_METAL_USE_BF16=ON \ |
87 | 82 | -DGGML_METAL_EMBED_LIBRARY=OFF \ |
88 | | - -DGGML_METAL_SHADER_DEBUG=ON \ |
89 | | - -DGGML_RPC=ON |
| 83 | + -DGGML_METAL_SHADER_DEBUG=OFF \ |
| 84 | + -DGGML_RPC=ON \ |
| 85 | + -DCMAKE_BUILD_TYPE=Release |
90 | 86 | cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) |
91 | | - leaks -atExit -- ./build/bin/test-thread-safety -hf ggml-org/gemma-3-270m-qat-GGUF -ngl 99 -p "$(printf 'hello %.0s' {1..128})" -n 16 -c 512 -ub 32 -np 2 -t 2 -lv 1 |
| 87 | + # Disabled debug testing with leaks - reduces coverage-like instrumentation |
| 88 | + # leaks -atExit -- ./build/bin/test-thread-safety -hf ggml-org/gemma-3-270m-qat-GGUF -ngl 99 -p "$(printf 'hello %.0s' {1..128})" -n 16 -c 512 -ub 32 -np 2 -t 2 -lv 1 |
92 | 89 |
|
93 | 90 | - name: Test |
94 | 91 | id: cmake_test |
@@ -237,59 +234,51 @@ jobs: |
237 | 234 | ./bin/llama-convert-llama2c-to-ggml --copy-vocab-from-model ./tok512.bin --llama2c-model stories260K.bin --llama2c-output-model stories260K.gguf |
238 | 235 | ./bin/llama-cli -m stories260K.gguf -p "One day, Lily met a Shoggoth" -n 500 -c 256 |
239 | 236 |
|
240 | | - ubuntu-latest-cmake-sanitizer: |
241 | | - runs-on: ubuntu-latest |
242 | | - |
243 | | - continue-on-error: true |
244 | | - |
245 | | - strategy: |
246 | | - matrix: |
247 | | - sanitizer: [ADDRESS, THREAD, UNDEFINED] |
248 | | - build_type: [Debug] |
249 | | - |
250 | | - steps: |
251 | | - - name: Clone |
252 | | - id: checkout |
253 | | - uses: actions/checkout@v4 |
254 | | - |
255 | | - - name: ccache |
256 | | - |
257 | | - with: |
258 | | - key: ubuntu-latest-cmake-sanitizer-${{ matrix.sanitizer }} |
259 | | - evict-old-files: 1d |
260 | | - |
261 | | - - name: Dependencies |
262 | | - id: depends |
263 | | - run: | |
264 | | - sudo apt-get update |
265 | | - sudo apt-get install build-essential libcurl4-openssl-dev |
266 | | -
|
267 | | - - name: Build |
268 | | - id: cmake_build |
269 | | - if: ${{ matrix.sanitizer != 'THREAD' }} |
270 | | - run: | |
271 | | - cmake -B build \ |
272 | | - -DLLAMA_FATAL_WARNINGS=ON \ |
273 | | - -DLLAMA_SANITIZE_${{ matrix.sanitizer }}=ON \ |
274 | | - -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} |
275 | | - cmake --build build --config ${{ matrix.build_type }} -j $(nproc) |
276 | | -
|
277 | | - - name: Build (no OpenMP) |
278 | | - id: cmake_build_no_openmp |
279 | | - if: ${{ matrix.sanitizer == 'THREAD' }} |
280 | | - run: | |
281 | | - cmake -B build \ |
282 | | - -DLLAMA_FATAL_WARNINGS=ON \ |
283 | | - -DLLAMA_SANITIZE_${{ matrix.sanitizer }}=ON \ |
284 | | - -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \ |
285 | | - -DGGML_OPENMP=OFF |
286 | | - cmake --build build --config ${{ matrix.build_type }} -j $(nproc) |
287 | | -
|
288 | | - - name: Test |
289 | | - id: cmake_test |
290 | | - run: | |
291 | | - cd build |
292 | | - ctest -L main --verbose --timeout 900 |
| 237 | + # ubuntu-latest-cmake-sanitizer: DISABLED - Sanitizer builds add coverage-like instrumentation |
| 238 | + # runs-on: ubuntu-latest |
| 239 | + # continue-on-error: true |
| 240 | + # strategy: |
| 241 | + # matrix: |
| 242 | + # sanitizer: [ADDRESS, THREAD, UNDEFINED] |
| 243 | + # build_type: [Debug] |
| 244 | + # steps: |
| 245 | + # - name: Clone |
| 246 | + # id: checkout |
| 247 | + # uses: actions/checkout@v4 |
| 248 | + # - name: ccache |
| 249 | + # uses: ggml-org/[email protected] |
| 250 | + # with: |
| 251 | + # key: ubuntu-latest-cmake-sanitizer-${{ matrix.sanitizer }} |
| 252 | + # evict-old-files: 1d |
| 253 | + # - name: Dependencies |
| 254 | + # id: depends |
| 255 | + # run: | |
| 256 | + # sudo apt-get update |
| 257 | + # sudo apt-get install build-essential libcurl4-openssl-dev |
| 258 | + # - name: Build |
| 259 | + # id: cmake_build |
| 260 | + # if: ${{ matrix.sanitizer != 'THREAD' }} |
| 261 | + # run: | |
| 262 | + # cmake -B build \ |
| 263 | + # -DLLAMA_FATAL_WARNINGS=ON \ |
| 264 | + # -DLLAMA_SANITIZE_${{ matrix.sanitizer }}=ON \ |
| 265 | + # -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} |
| 266 | + # cmake --build build --config ${{ matrix.build_type }} -j $(nproc) |
| 267 | + # - name: Build (no OpenMP) |
| 268 | + # id: cmake_build_no_openmp |
| 269 | + # if: ${{ matrix.sanitizer == 'THREAD' }} |
| 270 | + # run: | |
| 271 | + # cmake -B build \ |
| 272 | + # -DLLAMA_FATAL_WARNINGS=ON \ |
| 273 | + # -DLLAMA_SANITIZE_${{ matrix.sanitizer }}=ON \ |
| 274 | + # -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \ |
| 275 | + # -DGGML_OPENMP=OFF |
| 276 | + # cmake --build build --config ${{ matrix.build_type }} -j $(nproc) |
| 277 | + # - name: Test |
| 278 | + # id: cmake_test |
| 279 | + # run: | |
| 280 | + # cd build |
| 281 | + # ctest -L main --verbose --timeout 900 |
293 | 282 |
|
294 | 283 | ubuntu-latest-llguidance: |
295 | 284 | runs-on: ubuntu-latest |
|
0 commit comments