Brunobkr/llama.cpp_AlgMor24_github
ΩFFFΣLLIa • llama.cpp • AlgMor24 ██████╗ ███████╗███████╗███████╗██╗ ██╗ ██╗ █████╗ ██╔═══██╗██╔════╝██╔════╝██╔════╝██║ ██║ ██║██╔══██╗ ██║ ██║█████╗ █████╗ █████╗ ██║ ██║ ██║███████║ ██║ ██║██╔══╝ ██╔══╝ ██╔══╝ ██║ ██║ ██║██╔══██║ ╚██████╔╝██║ ██║ ███████╗███████╗███████╗██║██║ ██║ ╚═════╝ ╚═╝ ╚═╝ ╚══════╝╚══════╝╚══════╝╚═╝╚═╝ ╚═╝ High-Performance LLM / VLM Inference & Autonomous Agentic Ecosystem… See the full description on the dataset page: https://huggingface.co/datasets/Brunobkr/llama.cpp_AlgMor24_github.
03.1k
1name: Release2 3on:4 workflow_dispatch: # allows manual triggering5 inputs:6 create_release:7 description: 'Create new release'8 required: true9 type: boolean10 push:11 branches:12 - master13 paths: [14 '.github/workflows/release.yml',15 '**/CMakeLists.txt',16 '**/.cmake',17 '**/*.h',18 '**/*.hpp',19 '**/*.c',20 '**/*.cpp',21 '**/*.cu',22 '**/*.cuh',23 '**/*.swift',24 '**/*.m',25 '**/*.metal',26 '**/*.comp',27 '**/*.glsl'28 ]29 30env:31 GH_TOKEN: ${{ github.token }}32 BRANCH_NAME: ${{ github.head_ref || github.ref_name }}33 CMAKE_ARGS: "-DLLAMA_BUILD_EXAMPLES=OFF -DLLAMA_BUILD_TESTS=OFF -DLLAMA_BUILD_TOOLS=ON -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON"34 35# note: run this workflow one at a time for better cache reuse36concurrency:37 group: release38 queue: max39 40jobs:41 check-release:42 runs-on: ubuntu-slim43 44 outputs:45 should_release: ${{ steps.check.outputs.should_release }}46 47 steps:48 - id: check49 env:50 COMMIT_MESSAGE: ${{ github.event.head_commit.message }}51 run: |52 if [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then53 echo "should_release=true" >> $GITHUB_OUTPUT54 elif [[ "${{ github.event_name }}" == "push" && "${{ github.ref }}" == "refs/heads/master" ]]; then55 if echo "$COMMIT_MESSAGE" | grep -q '\[no release\]'; then56 echo "should_release=false" >> $GITHUB_OUTPUT57 else58 echo "should_release=true" >> $GITHUB_OUTPUT59 fi60 else61 echo "should_release=false" >> $GITHUB_OUTPUT62 fi63 64 get-version:65 runs-on: ubuntu-slim66 outputs:67 ui_version: ${{ steps.version.outputs.ui_version }}68 steps:69 - uses: actions/checkout@v670 with:71 fetch-depth: 072 - id: version73 run: |74 # Resolve UI version: BUILD_NUMBER from cmake/build-info.cmake > git hash + epoch > fallback75 version=""76 if grep -q "BUILD_NUMBER" cmake/build-info.cmake; then77 build_number=$(grep "set(BUILD_NUMBER" cmake/build-info.cmake | grep -oP '\d+')78 if [ -n "$build_number" ] && [ "$build_number" -gt 0 ]; then79 version="b${build_number}"80 fi81 fi82 if [ -z "$version" ]; then83 version=$(git rev-parse --short HEAD)-$(date +%s)84 fi85 echo "ui_version=${version}" >> $GITHUB_OUTPUT86 87 macos-cpu:88 needs: [check-release, get-version]89 if: ${{ needs.check-release.outputs.should_release == 'true' }}90 strategy:91 matrix:92 include:93 - build: 'arm64'94 arch: 'arm64'95 os: macos-2696 defines: "-DGGML_METAL_EMBED_LIBRARY=ON -DCMAKE_OSX_DEPLOYMENT_TARGET=13.3"97 # TODO: this build is disabled to save Github Actions resources (https://github.com/ggml-org/llama.cpp/pull/23780)98 # in order to enable it again, we have to provision dedicated runners to run it99 #- build: 'arm64-kleidiai'100 # arch: 'arm64'101 # os: macos-14102 # defines: "-DGGML_METAL_EMBED_LIBRARY=ON -DCMAKE_OSX_DEPLOYMENT_TARGET=13.3 -DGGML_CPU_KLEIDIAI=ON"103 - build: 'x64'104 arch: 'x64'105 os: macos-15-intel106 # Metal is disabled on x64 due to intermittent failures with Github runners not having a GPU:107 # https://github.com/ggml-org/llama.cpp/actions/runs/8635935781/job/23674807267#step:5:2313108 defines: "-DGGML_METAL=OFF -DCMAKE_OSX_DEPLOYMENT_TARGET=13.3"109 110 runs-on: ${{ matrix.os }}111 112 permissions:113 actions: write114 115 steps:116 - name: Clone117 id: checkout118 uses: actions/checkout@v6119 with:120 fetch-depth: 0121 122 - name: Setup Node.js123 uses: actions/setup-node@v6124 with:125 node-version: "24"126 cache: "npm"127 cache-dependency-path: "tools/ui/package-lock.json"128 129 - name: ccache130 uses: ggml-org/ccache-action@v1.2.21131 with:132 key: release-${{ matrix.os }}-${{ matrix.arch }}133 134 - name: Build135 id: cmake_build136 run: |137 sysctl -a138 cmake -B build \139 ${{ matrix.defines }} \140 -DCMAKE_INSTALL_RPATH='@loader_path' \141 -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \142 -DLLAMA_FATAL_WARNINGS=ON \143 -DLLAMA_BUILD_BORINGSSL=ON \144 -DHF_UI_VERSION=${{ needs.get-version.outputs.ui_version }} \145 ${{ env.CMAKE_ARGS }}146 cmake --build build --config Release -j $(sysctl -n hw.logicalcpu)147 148 - name: ccache-clear149 uses: ./.github/actions/ccache-clear150 with:151 key: release-${{ matrix.os }}-${{ matrix.arch }}152 153 - name: Determine tag name154 id: tag155 uses: ./.github/actions/get-tag-name156 157 - name: Pack artifacts158 id: pack_artifacts159 run: |160 cp LICENSE ./build/bin/161 tar -czvf llama-${{ steps.tag.outputs.name }}-bin-macos-${{ matrix.build }}.tar.gz -s ",^\.,llama-${{ steps.tag.outputs.name }}," -C ./build/bin .162 163 - name: Upload artifacts164 uses: actions/upload-artifact@v6165 with:166 path: llama-${{ steps.tag.outputs.name }}-bin-macos-${{ matrix.build }}.tar.gz167 name: llama-bin-macos-${{ matrix.build }}.tar.gz168 169 ubuntu-cpu:170 needs: [check-release, get-version]171 if: ${{ needs.check-release.outputs.should_release == 'true' }}172 strategy:173 matrix:174 include:175 - build: 'x64'176 os: ubuntu-22.04177 - build: 'arm64'178 os: ubuntu-24.04-arm179 - build: 's390x'180 os: ubuntu-24.04-s390x181 182 runs-on: ${{ matrix.os }}183 184 permissions:185 actions: write186 187 steps:188 - name: Clone189 id: checkout190 uses: actions/checkout@v6191 with:192 fetch-depth: 0193 194 - name: Setup Node.js195 uses: actions/setup-node@v6196 with:197 node-version: "24"198 cache: "npm"199 cache-dependency-path: "tools/ui/package-lock.json"200 201 - name: Dependencies202 id: depends203 run: |204 sudo apt-get update205 sudo apt-get install build-essential libssl-dev206 207 - name: Toolchain workaround (GCC 14)208 if: ${{ contains(matrix.os, 'ubuntu-24.04') }}209 run: |210 sudo apt-get install -y gcc-14 g++-14211 echo "CC=gcc-14" >> "$GITHUB_ENV"212 echo "CXX=g++-14" >> "$GITHUB_ENV"213 214 - name: ccache215 if: ${{ matrix.build != 's390x' }}216 uses: ggml-org/ccache-action@v1.2.21217 with:218 key: release-${{ matrix.os }}-cpu219 220 - name: Build221 id: cmake_build222 run: |223 cmake -B build \224 -DCMAKE_INSTALL_RPATH='$ORIGIN' \225 -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \226 -DGGML_BACKEND_DL=ON \227 -DGGML_NATIVE=OFF \228 -DGGML_CPU_ALL_VARIANTS=ON \229 -DLLAMA_FATAL_WARNINGS=ON \230 -DHF_UI_VERSION=${{ needs.get-version.outputs.ui_version }} \231 ${{ env.CMAKE_ARGS }}232 cmake --build build --config Release -j $(nproc)233 234 - name: ccache-clear235 if: ${{ matrix.build != 's390x' }}236 uses: ./.github/actions/ccache-clear237 with:238 key: release-${{ matrix.os }}-cpu239 240 - name: Determine tag name241 id: tag242 uses: ./.github/actions/get-tag-name243 244 - name: Pack artifacts245 id: pack_artifacts246 run: |247 cp LICENSE ./build/bin/248 tar -czvf llama-${{ steps.tag.outputs.name }}-bin-ubuntu-${{ matrix.build }}.tar.gz --transform "s,^\.,llama-${{ steps.tag.outputs.name }}," -C ./build/bin .249 250 - name: Upload artifacts251 uses: actions/upload-artifact@v6252 with:253 path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-${{ matrix.build }}.tar.gz254 name: llama-bin-ubuntu-${{ matrix.build }}.tar.gz255 256 ubuntu-vulkan:257 needs: [check-release, get-version]258 if: ${{ needs.check-release.outputs.should_release == 'true' }}259 260 strategy:261 matrix:262 include:263 - build: 'x64'264 os: ubuntu-22.04265 - build: 'arm64'266 os: ubuntu-24.04-arm267 268 runs-on: ${{ matrix.os }}269 270 permissions:271 actions: write272 273 steps:274 - name: Clone275 id: checkout276 uses: actions/checkout@v6277 with:278 fetch-depth: 0279 280 - name: Setup Node.js281 uses: actions/setup-node@v6282 with:283 node-version: "24"284 cache: "npm"285 cache-dependency-path: "tools/ui/package-lock.json"286 287 - name: Dependencies288 id: depends289 run: |290 if [[ "${{ matrix.os }}" =~ "ubuntu-22.04" ]]; then291 wget -qO - https://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo apt-key add -292 sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-jammy.list https://packages.lunarg.com/vulkan/lunarg-vulkan-jammy.list293 sudo apt-get update -y294 sudo apt-get install -y build-essential mesa-vulkan-drivers vulkan-sdk libssl-dev295 else296 sudo apt-get update -y297 sudo apt-get install -y gcc-14 g++-14 build-essential glslc libvulkan-dev spirv-headers libssl-dev ninja-build298 echo "CC=gcc-14" >> "$GITHUB_ENV"299 echo "CXX=g++-14" >> "$GITHUB_ENV"300 fi301 302 - name: ccache303 uses: ggml-org/ccache-action@v1.2.21304 with:305 key: release-${{ matrix.os }}-vulkan306 307 - name: Build308 id: cmake_build309 run: |310 cmake -B build \311 -DCMAKE_INSTALL_RPATH='$ORIGIN' \312 -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \313 -DGGML_BACKEND_DL=ON \314 -DGGML_NATIVE=OFF \315 -DGGML_CPU_ALL_VARIANTS=ON \316 -DGGML_VULKAN=ON \317 -DHF_UI_VERSION=${{ needs.get-version.outputs.ui_version }} \318 ${{ env.CMAKE_ARGS }}319 cmake --build build --config Release -j $(nproc)320 321 - name: ccache-clear322 uses: ./.github/actions/ccache-clear323 with:324 key: release-${{ matrix.os }}-vulkan325 326 - name: Determine tag name327 id: tag328 uses: ./.github/actions/get-tag-name329 330 - name: Pack artifacts331 id: pack_artifacts332 run: |333 cp LICENSE ./build/bin/334 tar -czvf llama-${{ steps.tag.outputs.name }}-bin-ubuntu-vulkan-${{ matrix.build }}.tar.gz --transform "s,^\.,llama-${{ steps.tag.outputs.name }}," -C ./build/bin .335 336 - name: Upload artifacts337 uses: actions/upload-artifact@v6338 with:339 path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-vulkan-${{ matrix.build }}.tar.gz340 name: llama-bin-ubuntu-vulkan-${{ matrix.build }}.tar.gz341 342 android-arm64:343 needs: [check-release, get-version]344 if: ${{ needs.check-release.outputs.should_release == 'true' }}345 346 runs-on: ubuntu-latest347 348 #permissions:349 # actions: write350 351 env:352 NDK_VERSION: "29.0.14206865"353 354 steps:355 - name: Clone356 id: checkout357 uses: actions/checkout@v6358 with:359 fetch-depth: 0360 361 - name: Setup Node.js362 uses: actions/setup-node@v6363 with:364 node-version: "24"365 cache: "npm"366 cache-dependency-path: "tools/ui/package-lock.json"367 368 - name: Set up JDK369 uses: actions/setup-java@v5370 with:371 java-version: 17372 distribution: temurin373 374 - name: Setup Android SDK375 uses: android-actions/setup-android@40fd30fb8d7440372e1316f5d1809ec01dcd3699 # v4.0.1376 with:377 log-accepted-android-sdk-licenses: false378 379 - name: Install NDK380 run: |381 sdkmanager "ndk;${{ env.NDK_VERSION }}"382 echo "ANDROID_NDK=${ANDROID_SDK_ROOT}/ndk/${{ env.NDK_VERSION }}" >> $GITHUB_ENV383 384 # note : disabled to spare some cache space (https://github.com/ggml-org/llama.cpp/pull/23789)385 # for some reason, the ccache does not improve the build time in this case386 # example:387 # cache off: https://github.com/ggerganov/tmp2/actions/runs/26534713799/job/78160400831388 # cache on: https://github.com/ggerganov/tmp2/actions/runs/26534713799/job/78224189394389 #390 #- name: ccache391 # uses: ggml-org/ccache-action@v1.2.21392 # with:393 # key: release-android-arm64394 395 - name: Build396 id: cmake_build397 run: |398 cmake -B build \399 -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake \400 -DANDROID_ABI=arm64-v8a \401 -DANDROID_PLATFORM=android-28 \402 -DCMAKE_INSTALL_RPATH='$ORIGIN' \403 -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \404 -DGGML_BACKEND_DL=ON \405 -DGGML_NATIVE=OFF \406 -DGGML_CPU_ALL_VARIANTS=ON \407 -DLLAMA_FATAL_WARNINGS=ON \408 -DGGML_OPENMP=OFF \409 -DLLAMA_BUILD_BORINGSSL=ON \410 -DHF_UI_VERSION=${{ needs.get-version.outputs.ui_version }} \411 ${{ env.CMAKE_ARGS }}412 cmake --build build --config Release -j $(nproc)413 414 #- name: ccache-clear415 # uses: ./.github/actions/ccache-clear416 # with:417 # key: release-android-arm64418 419 - name: Determine tag name420 id: tag421 uses: ./.github/actions/get-tag-name422 423 - name: Pack artifacts424 id: pack_artifacts425 run: |426 cp LICENSE ./build/bin/427 tar -czvf llama-${{ steps.tag.outputs.name }}-bin-android-arm64.tar.gz --transform "s,^\.,llama-${{ steps.tag.outputs.name }}," -C ./build/bin .428 429 - name: Upload artifacts430 uses: actions/upload-artifact@v6431 with:432 path: llama-${{ steps.tag.outputs.name }}-bin-android-arm64.tar.gz433 name: llama-bin-android-arm64.tar.gz434 435 ubuntu-24-openvino:436 needs: [check-release, get-version]437 if: ${{ needs.check-release.outputs.should_release == 'true' }}438 439 runs-on: ubuntu-24.04440 441 permissions:442 actions: write443 444 outputs:445 openvino_version: ${{ steps.openvino_version.outputs.value }}446 447 env:448 # Sync versions in build-openvino.yml, build-self-hosted.yml, release.yml, build-cache.yml, .devops/openvino.Dockerfile449 OPENVINO_VERSION_MAJOR: "2026.2.1"450 OPENVINO_VERSION_FULL: "2026.2.1.21919.ede283a88e3"451 452 steps:453 - name: Set OpenVINO version output454 id: openvino_version455 run: echo "value=${{ env.OPENVINO_VERSION_MAJOR }}" >> $GITHUB_OUTPUT456 457 - name: Clone458 id: checkout459 uses: actions/checkout@v6460 with:461 fetch-depth: 0462 463 - name: Setup Node.js464 uses: actions/setup-node@v6465 with:466 node-version: "24"467 cache: "npm"468 cache-dependency-path: "tools/ui/package-lock.json"469 470 - name: ccache471 uses: ggml-org/ccache-action@v1.2.21472 with:473 key: release-ubuntu-24.04-openvino-release-no-preset-v1474 475 - name: Dependencies476 run: |477 sudo apt-get update478 sudo apt-get install -y build-essential libssl-dev libtbb12 cmake ninja-build python3-pip479 sudo apt install ocl-icd-opencl-dev opencl-headers opencl-clhpp-headers intel-opencl-icd480 481 - name: Use OpenVINO Toolkit Cache482 uses: actions/cache@v5483 id: cache-openvino484 with:485 path: ./openvino_toolkit486 key: cache-gha-openvino-toolkit-v${{ env.OPENVINO_VERSION_FULL }}-${{ runner.os }}487 488 - name: Setup OpenVINO Toolkit489 if: steps.cache-openvino.outputs.cache-hit != 'true'490 uses: ./.github/actions/linux-setup-openvino491 with:492 path: ./openvino_toolkit493 version_major: ${{ env.OPENVINO_VERSION_MAJOR }}494 version_full: ${{ env.OPENVINO_VERSION_FULL }}495 496 - name: Install OpenVINO dependencies497 run: |498 cd ./openvino_toolkit499 chmod +x ./install_dependencies/install_openvino_dependencies.sh500 echo "Y" | sudo -E ./install_dependencies/install_openvino_dependencies.sh501 502 - name: Build503 id: cmake_build504 run: |505 source ./openvino_toolkit/setupvars.sh506 cmake -B build/ReleaseOV -G Ninja \507 -DCMAKE_BUILD_TYPE=Release \508 -DGGML_OPENVINO=ON \509 -DCMAKE_INSTALL_RPATH='$ORIGIN' \510 -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \511 -DHF_UI_VERSION=${{ needs.get-version.outputs.ui_version }} \512 ${{ env.CMAKE_ARGS }}513 cmake --build build/ReleaseOV --config Release --parallel514 515 - name: ccache-clear516 uses: ./.github/actions/ccache-clear517 with:518 key: release-ubuntu-24.04-openvino-release-no-preset-v1519 520 - name: Determine tag name521 id: tag522 uses: ./.github/actions/get-tag-name523 524 - name: Pack artifacts525 id: pack_artifacts526 run: |527 dest=./build/ReleaseOV/bin528 OPENVINO_ROOT=./openvino_toolkit529 ov_lib="$OPENVINO_ROOT/runtime/lib/intel64"530 531 # Bundle OpenVINO runtime libs + TBB. Binaries built with RPATH=$ORIGIN532 # load these siblings without setupvars.sh / LD_LIBRARY_PATH.533 cp -P "$ov_lib"/libopenvino.so* \534 "$ov_lib"/libopenvino_c.so* \535 "$ov_lib"/libopenvino_*_plugin.so \536 "$ov_lib"/libopenvino_intel_npu_compiler*.so \537 "$OPENVINO_ROOT"/runtime/3rdparty/tbb/lib/*.so* \538 "$dest"539 cp -P /usr/lib/x86_64-linux-gnu/libOpenCL.so.1* "$dest" 2>/dev/null || true540 cp "$ov_lib"/cache.json "$dest" 2>/dev/null || true541 542 # OpenVINO licensing543 cp -r "$OPENVINO_ROOT"/docs/licensing "$dest"/openvino-licensing544 545 cp LICENSE "$dest"546 tar -czvf llama-${{ steps.tag.outputs.name }}-bin-ubuntu-openvino-${{ env.OPENVINO_VERSION_MAJOR }}-x64.tar.gz --transform "s,^\.,llama-${{ steps.tag.outputs.name }}," -C "$dest" .547 548 - name: Upload artifacts549 uses: actions/upload-artifact@v6550 with:551 path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-openvino-${{ env.OPENVINO_VERSION_MAJOR }}-x64.tar.gz552 name: llama-bin-ubuntu-openvino-${{ env.OPENVINO_VERSION_MAJOR }}-x64.tar.gz553 554 windows-openvino:555 needs: [check-release]556 if: ${{ needs.check-release.outputs.should_release == 'true' }}557 558 runs-on: windows-2022559 560 outputs:561 openvino_version: ${{ steps.openvino_version.outputs.value }}562 563 env:564 # Sync versions in build-openvino.yml, build-self-hosted.yml, release.yml, build-cache.yml, .devops/openvino.Dockerfile565 OPENVINO_VERSION_MAJOR: "2026.2.1"566 OPENVINO_VERSION_FULL: "2026.2.1.21919.ede283a88e3"567 568 steps:569 - name: Set OpenVINO version output570 id: openvino_version571 shell: bash572 run: echo "value=${{ env.OPENVINO_VERSION_MAJOR }}" >> $GITHUB_OUTPUT573 574 - name: Clone575 id: checkout576 uses: actions/checkout@v6577 with:578 fetch-depth: 0579 580 - name: Setup Node.js581 uses: actions/setup-node@v6582 with:583 node-version: "24"584 cache: "npm"585 cache-dependency-path: "tools/ui/package-lock.json"586 587 - name: ccache588 uses: ggml-org/ccache-action@v1.2.21589 with:590 key: release-windows-2022-openvino591 variant: ccache592 evict-old-files: 1d593 594 - name: Setup Cache595 uses: actions/cache@v5596 id: cache-openvino597 with:598 path: ./openvino_toolkit599 key: cache-gha-openvino-toolkit-v${{ env.OPENVINO_VERSION_FULL }}-${{ runner.os }}600 601 - name: Setup OpenVINO Toolkit602 if: steps.cache-openvino.outputs.cache-hit != 'true'603 uses: ./.github/actions/windows-setup-openvino604 with:605 path: ./openvino_toolkit606 version_major: ${{ env.OPENVINO_VERSION_MAJOR }}607 version_full: ${{ env.OPENVINO_VERSION_FULL }}608 609 - name: Install OpenCL using vcpkg610 shell: powershell611 run: |612 git clone https://github.com/microsoft/vcpkg C:\vcpkg613 C:\vcpkg\bootstrap-vcpkg.bat614 C:\vcpkg\vcpkg install opencl615 616 - name: Build617 id: cmake_build618 shell: cmd619 run: |620 REM Find extracted OpenVINO folder dynamically621 for /d %%i in (openvino_toolkit\*) do set OPENVINO_ROOT=%%i622 623 if not exist "%OPENVINO_ROOT%\runtime\cmake\OpenVINOConfig.cmake" (624 echo ERROR: OpenVINOConfig.cmake not found625 exit /b 1626 )627 628 call "%OPENVINO_ROOT%\setupvars.bat"629 630 cmake -B build\ReleaseOV -G "Visual Studio 17 2022" ^631 -A x64 ^632 -DCMAKE_BUILD_TYPE=Release ^633 -DGGML_OPENVINO=ON ^634 -DLLAMA_BUILD_BORINGSSL=ON ^635 -DCMAKE_TOOLCHAIN_FILE=C:\vcpkg\scripts\buildsystems\vcpkg.cmake ^636 ${{ env.CMAKE_ARGS }}637 638 cmake --build build\ReleaseOV --config Release -- /m639 640 - name: ccache-clear641 uses: ./.github/actions/ccache-clear642 with:643 key: release-windows-2022-openvino644 645 - name: Determine tag name646 id: tag647 uses: ./.github/actions/get-tag-name648 649 - name: Pack artifacts650 id: pack_artifacts651 shell: powershell652 run: |653 # Locate the extracted OpenVINO toolkit root (same pattern as the Build step).654 $OPENVINO_ROOT = (Get-ChildItem -Directory openvino_toolkit | Select-Object -First 1).FullName655 if (-not $OPENVINO_ROOT) {656 Write-Error "OpenVINO toolkit folder not found under .\openvino_toolkit"657 exit 1658 }659 660 $dest = ".\build\ReleaseOV\bin\Release"661 662 $ovBin = Join-Path $OPENVINO_ROOT 'runtime\bin\intel64\Release'663 Copy-Item -Path (Join-Path $ovBin '*.dll') -Destination $dest -Force664 Copy-Item -Path (Join-Path $ovBin 'cache.json') -Destination $dest -Force665 666 $tbbBin = Join-Path $OPENVINO_ROOT 'runtime\3rdparty\tbb\bin'667 Copy-Item -Path (Join-Path $tbbBin 'tbb*.dll') -Destination $dest -Force668 669 # OpenVINO licensing670 $licensingDest = Join-Path $dest 'openvino-licensing'671 New-Item -ItemType Directory -Force -Path $licensingDest | Out-Null672 Copy-Item -Path (Join-Path $OPENVINO_ROOT 'docs\licensing\*') -Destination $licensingDest -Recurse -Force673 674 Copy-Item LICENSE $dest675 7z a -snl llama-${{ steps.tag.outputs.name }}-bin-win-openvino-${{ env.OPENVINO_VERSION_MAJOR }}-x64.zip $dest\*676 677 - name: Upload artifacts678 uses: actions/upload-artifact@v6679 with:680 path: llama-${{ steps.tag.outputs.name }}-bin-win-openvino-${{ env.OPENVINO_VERSION_MAJOR }}-x64.zip681 name: llama-bin-win-openvino-${{ env.OPENVINO_VERSION_MAJOR }}-x64.zip682 683 windows-cpu:684 needs: [check-release]685 if: ${{ needs.check-release.outputs.should_release == 'true' }}686 687 runs-on: windows-2025-vs2026688 689 permissions:690 actions: write691 692 strategy:693 matrix:694 include:695 - arch: 'x64'696 - arch: 'arm64'697 698 steps:699 - name: Clone700 uses: actions/checkout@v6701 with:702 fetch-depth: 0703 704 - name: Setup Node.js705 uses: actions/setup-node@v6706 with:707 node-version: "24"708 cache: "npm"709 cache-dependency-path: "tools/ui/package-lock.json"710 711 - name: Install Ninja712 run: |713 choco install ninja714 715 - name: ccache716 uses: ggml-org/ccache-action@v1.2.21717 with:718 key: release-windows-2025-vs2026-${{ matrix.arch }}-cpu719 720 - name: Build721 shell: cmd722 run: |723 call "C:\Program Files\Microsoft Visual Studio\18\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" ${{ matrix.arch == 'x64' && 'x64' || 'amd64_arm64' }}724 cmake -S . -B build -G "Ninja Multi-Config" ^725 -D CMAKE_TOOLCHAIN_FILE=cmake/${{ matrix.arch }}-windows-llvm.cmake ^726 -DLLAMA_BUILD_BORINGSSL=ON ^727 -DGGML_NATIVE=OFF ^728 -DGGML_BACKEND_DL=ON ^729 -DGGML_CPU_ALL_VARIANTS=${{ matrix.arch == 'x64' && 'ON' || 'OFF' }} ^730 -DGGML_OPENMP=ON ^731 ${{ env.CMAKE_ARGS }}732 cmake --build build --config Release733 734 - name: ccache-clear735 uses: ./.github/actions/ccache-clear736 with:737 key: release-windows-2025-vs2026-${{ matrix.arch }}-cpu738 739 - name: Pack artifacts740 id: pack_artifacts741 run: |742 Copy-Item "C:\Program Files\Microsoft Visual Studio\18\Enterprise\VC\Redist\MSVC\14.51.36231\debug_nonredist\${{ matrix.arch }}\Microsoft.VC145.OpenMP.LLVM\libomp140.${{ matrix.arch == 'x64' && 'x86_64' || 'aarch64' }}.dll" .\build\bin\Release\743 7z a -snl llama-bin-win-cpu-${{ matrix.arch }}.zip .\build\bin\Release\*744 745 - name: Upload artifacts746 uses: actions/upload-artifact@v6747 with:748 path: llama-bin-win-cpu-${{ matrix.arch }}.zip749 name: llama-bin-win-cpu-${{ matrix.arch }}.zip750 751 windows-rocm:752 runs-on: windows-2022753 754 strategy:755 matrix:756 include:757 - ROCM_VERSION: "7.14.0"758 gpu_targets: "gfx1010;gfx1011;gfx1012;gfx1030;gfx1031;gfx1032;gfx1033;gfx1034;gfx1035;gfx1036;gfx1100;gfx1101;gfx1102;gfx1103;gfx1150;gfx1151;gfx1152;gfx1153;gfx1200;gfx1201"759 build: x64760 761 steps:762 - name: Clone763 id: checkout764 uses: actions/checkout@v6765 with:766 fetch-depth: 0767 768 - name: ccache769 uses: ggml-org/ccache-action@v1.2.21770 with:771 key: windows-rocm-${{ matrix.ROCM_VERSION }}-${{ matrix.build }}772 evict-old-files: 1d773 774 - name: Cache ROCm Installation775 id: cache-rocm776 uses: actions/cache@v5777 with:778 path: C:\TheRock\build779 key: rocm-wheels-${{ matrix.ROCM_VERSION }}-multi-arch-${{ runner.os }}780 781 - name: Setup ROCm782 if: steps.cache-rocm.outputs.cache-hit != 'true'783 uses: ./.github/actions/windows-setup-rocm784 with:785 version: ${{ matrix.ROCM_VERSION }}786 787 - name: Setup ROCm Environment788 run: |789 $ErrorActionPreference = "Stop"790 791 # Activate venv from cache or fresh install792 & C:\TheRock\build\.venv\Scripts\Activate.ps1793 794 # Expand the devel tree (idempotent; no-op if already done during install)795 rocm-sdk init796 if ($LASTEXITCODE -ne 0) { throw "rocm-sdk init failed with exit code $LASTEXITCODE" }797 798 # Get ROCm installation paths using the rocm-sdk CLI tool799 $rocmPath = (rocm-sdk path --root)800 if (-not $rocmPath) { throw "rocm-sdk path --root returned empty - devel package may not be installed" }801 $rocmPath = $rocmPath.Trim()802 $cmakePath = (rocm-sdk path --cmake).Trim()803 $binPath = (rocm-sdk path --bin).Trim()804 write-host "ROCm root: $rocmPath"805 write-host "CMake path: $cmakePath"806 write-host "Bin path: $binPath"807 808 echo "HIP_PATH=$rocmPath" >> $env:GITHUB_ENV809 echo "CMAKE_PREFIX_PATH=$cmakePath" >> $env:GITHUB_ENV810 echo "HIP_DEVICE_LIB_PATH=$rocmPath\lib\llvm\amdgcn\bitcode" >> $env:GITHUB_ENV811 echo "HIP_PLATFORM=amd" >> $env:GITHUB_ENV812 echo "LLVM_PATH=$rocmPath\lib\llvm" >> $env:GITHUB_ENV813 echo "$binPath" >> $env:GITHUB_PATH814 815 # Keep venv in PATH for subsequent steps816 echo "C:\TheRock\build\.venv\Scripts" >> $env:GITHUB_PATH817 818 - name: Build819 run: |820 mkdir build821 cd build822 cmake .. `823 -G "Unix Makefiles" `824 -DCMAKE_PREFIX_PATH="${env:HIP_PATH}" `825 -DCMAKE_BUILD_TYPE=Release `826 -DGGML_BACKEND_DL=ON `827 -DGGML_NATIVE=OFF `828 -DGGML_CPU=ON `829 -DGGML_CPU_ALL_VARIANTS=ON `830 -DGGML_HIP=ON `831 -DCMAKE_C_COMPILER="${env:HIP_PATH}\lib\llvm\bin\clang.exe" `832 -DCMAKE_CXX_COMPILER="${env:HIP_PATH}\lib\llvm\bin\clang++.exe" `833 -DCMAKE_C_FLAGS="-Wno-error=incompatible-pointer-types" `834 -DCMAKE_HIP_COMPILER="${env:HIP_PATH}\lib\llvm\bin\clang.exe" `835 -DHIP_PATH="${env:HIP_PATH}" `836 -DGGML_HIP_ROCWMMA_FATTN=ON `837 -DAMDGPU_TARGETS="${{ matrix.gpu_targets }}"838 cmake --build . --config Release --parallel ${env:NUMBER_OF_PROCESSORS}839 840 - name: ccache-clear841 uses: ./.github/actions/ccache-clear842 with:843 key: windows-rocm-${{ matrix.ROCM_VERSION }}-${{ matrix.build }}844 845 - name: Verify HIP backend was built846 run: |847 $hipDll = Get-ChildItem -Path build\bin -Filter "ggml-hip*.dll" -ErrorAction SilentlyContinue848 if (-not $hipDll) {849 Write-Host "##[error]ggml-hip*.dll was NOT produced. The HIP backend silently failed to build."850 Write-Host "Contents of build\bin:"851 Get-ChildItem build\bin | Format-Table -AutoSize852 exit 1853 }854 Write-Host "HIP backend artifact found:"855 $hipDll | Format-Table FullName, Length -AutoSize856 857 - name: Determine tag name858 id: tag859 uses: ./.github/actions/get-tag-name860 861 - name: Get ROCm short version862 run: |863 $rocmVersionShort = ('${{ matrix.ROCM_VERSION }}'.Split('.')[0..1] -join '.')864 echo "ROCM_VERSION_SHORT=$rocmVersionShort" >> $env:GITHUB_ENV865 866 - name: Pack artifacts867 run: |868 cp "LICENSE" "build\bin\"869 7z a -snl llama-bin-win-rocm-${{ env.ROCM_VERSION_SHORT }}-${{ matrix.build }}.zip .\build\bin\*870 871 - name: Upload artifacts872 uses: actions/upload-artifact@v6873 with:874 path: llama-bin-win-rocm-${{ env.ROCM_VERSION_SHORT }}-${{ matrix.build }}.zip875 name: llama-bin-win-rocm-${{ env.ROCM_VERSION_SHORT }}-${{ matrix.build }}.zip876 877 windows:878 needs: [check-release]879 if: ${{ needs.check-release.outputs.should_release == 'true' }}880 881 runs-on: windows-2025882 883 permissions:884 actions: write885 886 env:887 OPENBLAS_VERSION: 0.3.23888 VULKAN_VERSION: 1.4.357.0889 890 strategy:891 matrix:892 include:893 - backend: 'vulkan'894 arch: 'x64'895 defines: '-DGGML_VULKAN=ON'896 target: 'ggml-vulkan'897 - backend: 'opencl-adreno'898 arch: 'arm64'899 defines: '-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'900 target: 'ggml-opencl'901 902 steps:903 - name: Clone904 id: checkout905 uses: actions/checkout@v6906 907 - name: Setup Node.js908 uses: actions/setup-node@v6909 with:910 node-version: "24"911 cache: "npm"912 cache-dependency-path: "tools/ui/package-lock.json"913 914 - name: Install Vulkan SDK915 id: get_vulkan916 if: ${{ matrix.backend == 'vulkan' }}917 run: |918 curl.exe -o $env:RUNNER_TEMP/VulkanSDK-Installer.exe -L "https://sdk.lunarg.com/sdk/download/${env:VULKAN_VERSION}/windows/vulkansdk-windows-X64-${env:VULKAN_VERSION}.exe"919 & "$env:RUNNER_TEMP\VulkanSDK-Installer.exe" --accept-licenses --default-answer --confirm-command install920 Add-Content $env:GITHUB_ENV "VULKAN_SDK=C:\VulkanSDK\${env:VULKAN_VERSION}"921 Add-Content $env:GITHUB_PATH "C:\VulkanSDK\${env:VULKAN_VERSION}\bin"922 923 - name: Install Ninja924 id: install_ninja925 run: |926 choco install ninja927 928 # TODO: these jobs need to use llvm toolchain in order to utilize the ccache929 #- name: ccache930 # uses: ggml-org/ccache-action@v1.2.21931 # with:932 # key: release-windows-2025-${{ matrix.arch }}-${{ matrix.backend }}933 934 - name: Install OpenCL Headers and Libs935 id: install_opencl936 if: ${{ matrix.backend == 'opencl-adreno' && matrix.arch == 'arm64' }}937 run: |938 git clone https://github.com/KhronosGroup/OpenCL-Headers939 cd OpenCL-Headers940 cmake -B build `941 -DBUILD_TESTING=OFF `942 -DOPENCL_HEADERS_BUILD_TESTING=OFF `943 -DOPENCL_HEADERS_BUILD_CXX_TESTS=OFF `944 -DCMAKE_INSTALL_PREFIX="$env:RUNNER_TEMP/opencl-arm64-release"945 cmake --build build --target install946 git clone https://github.com/KhronosGroup/OpenCL-ICD-Loader947 cd OpenCL-ICD-Loader948 cmake -B build-arm64-release `949 -A arm64 `950 -DCMAKE_PREFIX_PATH="$env:RUNNER_TEMP/opencl-arm64-release" `951 -DCMAKE_INSTALL_PREFIX="$env:RUNNER_TEMP/opencl-arm64-release"952 cmake --build build-arm64-release --target install --config release953 954 - name: Build955 id: cmake_build956 run: |957 cmake -S . -B build ${{ matrix.defines }} -DGGML_NATIVE=OFF -DGGML_CPU=OFF -DGGML_BACKEND_DL=ON -DLLAMA_BUILD_BORINGSSL=ON958 cmake --build build --config Release --target ${{ matrix.target }}959 960 #- name: ccache-clear961 # uses: ./.github/actions/ccache-clear962 # with:963 # key: release-windows-2025-${{ matrix.arch }}-${{ matrix.backend }}964 965 - name: Pack artifacts966 id: pack_artifacts967 run: |968 7z a -snl llama-bin-win-${{ matrix.backend }}-${{ matrix.arch }}.zip .\build\bin\Release\${{ matrix.target }}.dll969 970 - name: Upload artifacts971 uses: actions/upload-artifact@v6972 with:973 path: llama-bin-win-${{ matrix.backend }}-${{ matrix.arch }}.zip974 name: llama-bin-win-${{ matrix.backend }}-${{ matrix.arch }}.zip975 976 windows-cuda:977 name: windows-cuda (${{ matrix.cuda }}, ${{ matrix.arch }})978 needs: [check-release]979 if: ${{ needs.check-release.outputs.should_release == 'true' }}980 981 runs-on: windows-2022982 983 permissions:984 actions: write985 986 strategy:987 matrix:988 include:989 - cuda: '12.4'990 arch: x64991 defines: '-DGGML_CUDA_CUB_3DOT2=ON'992 - cuda: '13.3'993 arch: x64994 defines: ''995 - cuda: '13.4'996 arch: arm64997 defines: '-DCMAKE_TOOLCHAIN_FILE=cmake/arm64-windows-msvc-cuda.cmake'998 999 steps:1000 - name: Clone1001 id: checkout1002 uses: actions/checkout@v61003 1004 - name: Setup Node.js1005 uses: actions/setup-node@v61006 with:1007 node-version: "24"1008 cache: "npm"1009 cache-dependency-path: "tools/ui/package-lock.json"1010 1011 - name: Install Cuda Toolkit1012 uses: ./.github/actions/windows-setup-cuda1013 with:1014 cuda_version: ${{ matrix.cuda }}1015 cuda_arch: ${{ matrix.arch }}1016 1017 - name: Install Ninja1018 id: install_ninja1019 run: |1020 choco install ninja1021 1022 - name: ccache1023 uses: ggml-org/ccache-action@v1.2.211024 with:1025 key: release-windows-2022-${{ matrix.arch }}-cuda-${{ matrix.cuda }}1026 1027 - name: Build1028 id: cmake_build1029 shell: cmd1030 # TODO: Remove GGML_CUDA_CUB_3DOT2 flag once CCCL 3.2 is bundled within CTK and that CTK version is used in this project1031 run: |1032 call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" ${{ matrix.arch == 'x64' && 'x64' || 'amd64_arm64' }}1033 cmake -S . -B build -G "Ninja Multi-Config" ^1034 -DGGML_BACKEND_DL=ON ^1035 -DGGML_NATIVE=OFF ^1036 -DGGML_CPU=OFF ^1037 -DGGML_CUDA=ON ^1038 -DLLAMA_BUILD_BORINGSSL=ON ${{ matrix.defines }}1039 set /A NINJA_JOBS=%NUMBER_OF_PROCESSORS%-11040 cmake --build build --config Release -j %NINJA_JOBS% --target ggml-cuda1041 1042 - name: ccache-clear1043 uses: ./.github/actions/ccache-clear1044 with:1045 key: release-windows-2022-${{ matrix.arch }}-cuda-${{ matrix.cuda }}1046 1047 - name: Pack artifacts1048 id: pack_artifacts1049 run: |1050 7z a -snl llama-bin-win-cuda-${{ matrix.cuda }}-${{ matrix.arch }}.zip .\build\bin\Release\ggml-cuda.dll1051 1052 - name: Upload artifacts1053 uses: actions/upload-artifact@v61054 with:1055 path: llama-bin-win-cuda-${{ matrix.cuda }}-${{ matrix.arch }}.zip1056 name: llama-bin-win-cuda-${{ matrix.cuda }}-${{ matrix.arch }}.zip1057 1058 - name: Copy and pack Cuda runtime (x64)1059 if: ${{ matrix.arch == 'x64' }}1060 run: |1061 echo "Cuda install location: ${{ env.CUDA_PATH }}"1062 $dst='.\build\bin\cudart\'1063 robocopy "${{env.CUDA_PATH}}\bin" $dst cudart64_*.dll cublas64_*.dll cublasLt64_*.dll1064 robocopy "${{env.CUDA_PATH}}\lib" $dst cudart64_*.dll cublas64_*.dll cublasLt64_*.dll1065 robocopy "${{env.CUDA_PATH}}\bin\x64" $dst cudart64_*.dll cublas64_*.dll cublasLt64_*.dll1066 7z a cudart-llama-bin-win-cuda-${{ matrix.cuda }}-${{ matrix.arch }}.zip $dst\*1067 1068 - name: Copy and pack Cuda runtime (ARM64)1069 if: ${{ matrix.arch == 'arm64' }}1070 run: |1071 echo "Cuda install location: ${{ env.CUDA_PATH }}"1072 $dst='.\build\bin\cudart\'1073 robocopy "${{env.CUDA_PATH}}\bin\arm64" $dst cudart64_*.dll cublas64_*.dll cublasLt64_*.dll1074 7z a cudart-llama-bin-win-cuda-${{ matrix.cuda }}-${{ matrix.arch }}.zip $dst\*1075 1076 - name: Upload Cuda runtime1077 uses: actions/upload-artifact@v61078 with:1079 path: cudart-llama-bin-win-cuda-${{ matrix.cuda }}-${{ matrix.arch }}.zip1080 name: cudart-llama-bin-win-cuda-${{ matrix.cuda }}-${{ matrix.arch }}.zip1081 1082 windows-sycl:1083 needs: [check-release]1084 if: ${{ needs.check-release.outputs.should_release == 'true' }}1085 1086 runs-on: windows-20221087 1088 defaults:1089 run:1090 shell: bash1091 1092 env:1093 WINDOWS_BASEKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/b60765d1-2b85-4e85-86b6-cb0e9563a699/intel-deep-learning-essentials-2025.3.3.18_offline.exe1094 WINDOWS_DPCPP_MKL: intel.oneapi.win.cpp-dpcpp-common:intel.oneapi.win.mkl.devel:intel.oneapi.win.dnnl:intel.oneapi.win.tbb.devel1095 LEVEL_ZERO_SDK_URL: https://github.com/oneapi-src/level-zero/releases/download/v1.28.2/level-zero-win-sdk-1.28.2.zip1096 ONEAPI_ROOT: "C:/Program Files (x86)/Intel/oneAPI"1097 ONEAPI_INSTALLER_VERSION: "2025.3.3"1098 1099 steps:1100 - name: Clone1101 id: checkout1102 uses: actions/checkout@v61103 1104 - name: Download & Install oneAPI1105 shell: bash1106 run: |1107 scripts/install-oneapi.bat $WINDOWS_BASEKIT_URL $WINDOWS_DPCPP_MKL1108 1109 - name: Install Level Zero SDK1110 shell: pwsh1111 run: |1112 Invoke-WebRequest -Uri "${{ env.LEVEL_ZERO_SDK_URL }}" -OutFile "level-zero-win-sdk.zip"1113 Expand-Archive -Path "level-zero-win-sdk.zip" -DestinationPath "C:/level-zero-sdk" -Force1114 "LEVEL_ZERO_V1_SDK_PATH=C:/level-zero-sdk" | Out-File -FilePath $env:GITHUB_ENV -Append1115 1116 - name: Setup Node.js1117 uses: actions/setup-node@v61118 with:1119 node-version: "24"1120 cache: "npm"1121 cache-dependency-path: "tools/ui/package-lock.json"1122 1123 - name: ccache1124 uses: ggml-org/ccache-action@v1.2.211125 with:1126 key: release-windows-2022-x64-sycl1127 1128 - name: Build1129 id: cmake_build1130 shell: cmd1131 run: |1132 call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat" intel64 --force1133 cmake -G "Ninja" -B build ^1134 -DCMAKE_C_COMPILER=cl -DCMAKE_CXX_COMPILER=icx ^1135 -DCMAKE_BUILD_TYPE=Release ^1136 -DGGML_BACKEND_DL=ON -DBUILD_SHARED_LIBS=ON ^1137 -DGGML_CPU=OFF -DGGML_SYCL=ON ^1138 -DLLAMA_BUILD_BORINGSSL=ON1139 cmake --build build --target ggml-sycl -j %NUMBER_OF_PROCESSORS%1140 1141 - name: ccache-clear1142 uses: ./.github/actions/ccache-clear1143 with:1144 key: release-windows-2022-x64-sycl1145 1146 - name: Build the release package1147 id: pack_artifacts1148 run: |1149 echo "cp oneAPI running time dll files in ${{ env.ONEAPI_ROOT }} to ./build/bin"1150 1151 cp "${{ env.ONEAPI_ROOT }}/mkl/latest/bin/mkl_sycl_blas.5.dll" ./build/bin1152 cp "${{ env.ONEAPI_ROOT }}/mkl/latest/bin/mkl_core.2.dll" ./build/bin1153 cp "${{ env.ONEAPI_ROOT }}/mkl/latest/bin/mkl_tbb_thread.2.dll" ./build/bin1154 1155 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/ur_adapter_level_zero.dll" ./build/bin1156 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/ur_adapter_level_zero_v2.dll" ./build/bin1157 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/ur_adapter_opencl.dll" ./build/bin1158 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/ur_loader.dll" ./build/bin1159 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/ur_win_proxy_loader.dll" ./build/bin1160 ZE_LOADER_DLL=$(find "${{ env.ONEAPI_ROOT }}" "$LEVEL_ZERO_V1_SDK_PATH" -iname ze_loader.dll -print -quit 2>/dev/null || true)1161 if [ -n "$ZE_LOADER_DLL" ]; then1162 echo "Using Level Zero loader: $ZE_LOADER_DLL"1163 cp "$ZE_LOADER_DLL" ./build/bin1164 else1165 echo "Level Zero loader DLL not found in oneAPI or SDK; relying on system driver/runtime"1166 fi1167 1168 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/sycl8.dll" ./build/bin1169 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/svml_dispmd.dll" ./build/bin1170 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/libmmd.dll" ./build/bin1171 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/libiomp5md.dll" ./build/bin1172 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/sycl-ls.exe" ./build/bin1173 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/libsycl-fallback-bfloat16.spv" ./build/bin1174 cp "${{ env.ONEAPI_ROOT }}/compiler/latest/bin/libsycl-native-bfloat16.spv" ./build/bin1175 1176 cp "${{ env.ONEAPI_ROOT }}/dnnl/latest/bin/dnnl.dll" ./build/bin1177 cp "${{ env.ONEAPI_ROOT }}/tbb/latest/bin/tbb12.dll" ./build/bin1178 1179 cp "${{ env.ONEAPI_ROOT }}/tcm/latest/bin/tcm.dll" ./build/bin1180 cp "${{ env.ONEAPI_ROOT }}/tcm/latest/bin/libhwloc-15.dll" ./build/bin1181 cp "${{ env.ONEAPI_ROOT }}/umf/latest/bin/umf.dll" ./build/bin1182 1183 echo "cp oneAPI running time dll files to ./build/bin done"1184 7z a -snl llama-bin-win-sycl-x64.zip ./build/bin/*1185 1186 - name: Upload the release package1187 uses: actions/upload-artifact@v61188 with:1189 path: llama-bin-win-sycl-x64.zip1190 name: llama-bin-win-sycl-x64.zip1191 1192 ubuntu-24-sycl:1193 needs: [check-release]1194 if: ${{ needs.check-release.outputs.should_release == 'true' }}1195 1196 strategy:1197 matrix:1198 build: [fp32, fp16]1199 include:1200 - build: fp32