echodict/llama.cpp
version https://git-lfs.github.com/spec/v1 oid sha256:cfc44b7ba25614df70e6b65e3341cae0310163bd32fd31a6b928a542df433faf size 30786
0773
1name: CI (sanitize)2 3on:4 workflow_dispatch: # allows manual triggering5 push:6 branches:7 - master8 paths: [9 '.github/workflows/build-sanitize.yml',10 '**/CMakeLists.txt',11 '**/.cmake',12 '**/*.h',13 '**/*.hpp',14 '**/*.c',15 '**/*.cpp'16 ]17 18concurrency:19 group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}20 cancel-in-progress: true21 22env:23 GGML_NLOOP: 324 GGML_N_THREADS: 125 LLAMA_LOG_COLORS: 126 LLAMA_LOG_PREFIX: 127 LLAMA_LOG_TIMESTAMPS: 128 29jobs:30 ubuntu-latest-sanitizer:31 runs-on: ubuntu-latest32 33 continue-on-error: true34 35 strategy:36 matrix:37 sanitizer: [ADDRESS, THREAD, UNDEFINED]38 build_type: [Debug]39 40 steps:41 - name: Clone42 id: checkout43 uses: actions/checkout@v644 45 - name: ccache46 uses: ggml-org/ccache-action@v1.2.2147 with:48 key: ubuntu-latest-sanitizer-${{ matrix.sanitizer }}49 evict-old-files: 1d50 save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}51 52 - name: Dependencies53 id: depends54 run: |55 sudo apt-get update56 sudo apt-get install build-essential libssl-dev57 58 - name: Build59 id: cmake_build60 if: ${{ matrix.sanitizer != 'THREAD' }}61 run: |62 cmake -B build \63 -DLLAMA_FATAL_WARNINGS=ON \64 -DLLAMA_SANITIZE_${{ matrix.sanitizer }}=ON \65 -DGGML_SANITIZE_${{ matrix.sanitizer }}=ON \66 -DCMAKE_BUILD_TYPE=${{ matrix.build_type }}67 68 cmake --build build --config ${{ matrix.build_type }} -j $(nproc)69 70 - name: Build (no OpenMP)71 id: cmake_build_no_openmp72 if: ${{ matrix.sanitizer == 'THREAD' }}73 run: |74 cmake -B build \75 -DLLAMA_FATAL_WARNINGS=ON \76 -DLLAMA_SANITIZE_${{ matrix.sanitizer }}=ON \77 -DGGML_SANITIZE_${{ matrix.sanitizer }}=ON \78 -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \79 -DGGML_OPENMP=OFF80 81 cmake --build build --config ${{ matrix.build_type }} -j $(nproc)82 83 - name: Test84 id: cmake_test85 run: |86 cd build87 ctest -L main --verbose --timeout 90088 