char-fork/llama.cpp
git clone https://git.t4t.associates/char-fork/llama.cpp
234a6ebaa
char/aliceai-t5-moe
1name : CI (opencl) 2 3on : 4workflow_dispatch : # allows manual triggering 5push : 6branches : 7- master 8paths : [ 9'.github/workflows/build-opencl.yml' , 10'**/CMakeLists.txt' , 11'**/.cmake' , 12'**/*.h' , 13'**/*.hpp' , 14'**/*.c' , 15'**/*.cpp' , 16'**/*.cl' 17] 18 19pull_request : 20types : [ opened , synchronize , reopened ] 21paths : [ 22'.github/workflows/build-opencl.yml' , 23'ggml/src/ggml-opencl/**' 24] 25 26concurrency : 27group : ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }} 28cancel-in-progress : true 29 30env : 31GGML_NLOOP : 3 32GGML_N_THREADS : 1 33LLAMA_ARG_LOG_COLORS : 1 34LLAMA_ARG_LOG_PREFIX : 1 35LLAMA_ARG_LOG_TIMESTAMPS : 1 36 37jobs : 38windows-2025-opencl-adreno : 39runs-on : windows-2025 40 41steps : 42- name : Clone 43id : checkout 44uses : actions/checkout@v6 45 46- name : ccache 47uses : ggml-org/ccache-action@v1.2.24 48with : 49key : opencl-windows-2025-x64 50variant : ccache 51evict-old-files : 1d 52save : ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }} 53 54- name : Install Ninja 55id : install_ninja 56run : | 57choco install ninja 58 59- name : Install OpenCL Headers and Libs 60id : install_opencl 61run : | 62git clone https://github.com/KhronosGroup/OpenCL-Headers 63cd OpenCL-Headers 64cmake -B build ` 65-DBUILD_TESTING=OFF ` 66-DOPENCL_HEADERS_BUILD_TESTING=OFF ` 67-DOPENCL_HEADERS_BUILD_CXX_TESTS=OFF ` 68-DCMAKE_INSTALL_PREFIX="$env:RUNNER_TEMP/opencl-arm64-release" 69cmake --build build --target install 70git clone https://github.com/KhronosGroup/OpenCL-ICD-Loader 71cd OpenCL-ICD-Loader 72cmake -B build-arm64-release ` 73-A arm64 ` 74-DCMAKE_PREFIX_PATH="$env:RUNNER_TEMP/opencl-arm64-release" ` 75-DCMAKE_INSTALL_PREFIX="$env:RUNNER_TEMP/opencl-arm64-release" 76cmake --build build-arm64-release --target install --config release 77 78- name : Build 79id : cmake_build 80run : | 81cmake -S . -B build -G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/arm64-windows-llvm.cmake -DCMAKE_PREFIX_PATH="$env:RUNNER_TEMP/opencl-arm64-release" -DGGML_OPENCL=ON -DGGML_OPENCL_USE_ADRENO_KERNELS=ON -DLLAMA_BUILD_BORINGSSL=ON 82cmake --build build --config Release -j ${env:NUMBER_OF_PROCESSORS} 83 84- name : ccache-clear 85uses : ./.github/actions/ccache-clear 86env : 87GH_TOKEN : ${{ github.token }} 88with : 89key : opencl-windows-2025-x64 90older : 5m 91min : 1 92dry-run : ${{ github.event_name != 'push' || github.ref != 'refs/heads/master' }}