@@ -633,6 +633,7 @@ jobs:
633
633
-DGGML_METAL_EMBED_LIBRARY=ON \
634
634
-DLLAMA_BUILD_COMMON=OFF \
635
635
-DLLAMA_BUILD_EXAMPLES=OFF \
636
+ -DLLAMA_BUILD_TOOLS=OFF \
636
637
-DLLAMA_BUILD_TESTS=OFF \
637
638
-DLLAMA_BUILD_SERVER=OFF \
638
639
-DCMAKE_SYSTEM_NAME=iOS \
@@ -669,6 +670,7 @@ jobs:
669
670
-DGGML_METAL_EMBED_LIBRARY=ON \
670
671
-DLLAMA_BUILD_COMMON=OFF \
671
672
-DLLAMA_BUILD_EXAMPLES=OFF \
673
+ -DLLAMA_BUILD_TOOLS=OFF \
672
674
-DLLAMA_BUILD_TESTS=OFF \
673
675
-DLLAMA_BUILD_SERVER=OFF \
674
676
-DCMAKE_SYSTEM_NAME=tvOS \
@@ -699,6 +701,7 @@ jobs:
699
701
-DGGML_METAL_EMBED_LIBRARY=ON \
700
702
-DLLAMA_BUILD_COMMON=OFF \
701
703
-DLLAMA_BUILD_EXAMPLES=OFF \
704
+ -DLLAMA_BUILD_TOOLS=OFF \
702
705
-DLLAMA_BUILD_TESTS=OFF \
703
706
-DLLAMA_BUILD_SERVER=OFF \
704
707
-DCMAKE_SYSTEM_NAME=visionOS \
@@ -739,6 +742,7 @@ jobs:
739
742
-DGGML_METAL_EMBED_LIBRARY=ON \
740
743
-DLLAMA_CURL=OFF \
741
744
-DLLAMA_BUILD_EXAMPLES=OFF \
745
+ -DLLAMA_BUILD_TOOLS=OFF \
742
746
-DLLAMA_BUILD_TESTS=OFF \
743
747
-DLLAMA_BUILD_SERVER=OFF \
744
748
-DCMAKE_OSX_ARCHITECTURES="arm64;x86_64"
@@ -767,7 +771,7 @@ jobs:
767
771
uses :
hendrikmuhs/[email protected]
768
772
with :
769
773
key : windows-msys2
770
- variant : sccache
774
+ variant : ccache
771
775
evict-old-files : 1d
772
776
773
777
- name : Setup ${{ matrix.sys }}
@@ -810,26 +814,18 @@ jobs:
810
814
strategy :
811
815
matrix :
812
816
include :
813
- - build : ' noavx-x64'
814
- defines : ' -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_AVX=OFF -DGGML_AVX2=OFF -DGGML_FMA=OFF'
815
- - build : ' avx2-x64'
816
- defines : ' -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON'
817
- - build : ' avx-x64'
818
- defines : ' -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_AVX2=OFF'
819
- - build : ' avx512-x64'
820
- defines : ' -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_AVX512=ON'
817
+ - build : ' cpu-x64'
818
+ defines : ' -G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/x64-windows-llvm.cmake -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON -DGGML_OPENMP=OFF'
821
819
- build : ' openblas-x64'
822
- defines : ' -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_BLAS=ON -DGGML_BLAS_VENDOR=OpenBLAS -DBLAS_INCLUDE_DIRS="$env:RUNNER_TEMP/openblas/include" -DBLAS_LIBRARIES="$env:RUNNER_TEMP/openblas/lib/openblas.lib"'
823
- - build : ' kompute-x64'
824
- defines : ' -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_KOMPUTE=ON -DKOMPUTE_OPT_DISABLE_VULKAN_VERSION_CHECK=ON'
820
+ defines : ' -G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/x64-windows-llvm.cmake -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON -DGGML_OPENMP=OFF -DGGML_BLAS=ON -DGGML_BLAS_VENDOR=OpenBLAS -DBLAS_INCLUDE_DIRS="$env:RUNNER_TEMP/openblas/include" -DBLAS_LIBRARIES="$env:RUNNER_TEMP/openblas/lib/openblas.lib"'
825
821
- build : ' vulkan-x64'
826
- defines : ' -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_VULKAN=ON'
822
+ defines : ' -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON - DGGML_VULKAN=ON'
827
823
- build : ' llvm-arm64'
828
824
defines : ' -G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/arm64-windows-llvm.cmake -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON'
829
- - build : ' msvc-arm64'
830
- defines : ' -G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/arm64-windows-msvc.cmake -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON'
831
825
- build : ' llvm-arm64-opencl-adreno'
832
826
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'
827
+ # - build: 'kompute-x64'
828
+ # defines: '-G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/x64-windows-llvm.cmake -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON -DGGML_OPENMP=OFF -DGGML_KOMPUTE=ON -DKOMPUTE_OPT_DISABLE_VULKAN_VERSION_CHECK=ON'
833
829
834
830
steps :
835
831
- name : Clone
@@ -842,7 +838,7 @@ jobs:
842
838
uses :
hendrikmuhs/[email protected]
843
839
with :
844
840
key : windows-latest-cmake-${{ matrix.build }}
845
- variant : sccache
841
+ variant : ccache
846
842
evict-old-files : 1d
847
843
848
844
- name : Clone Kompute submodule
@@ -918,39 +914,26 @@ jobs:
918
914
cp $env:RUNNER_TEMP/openblas/bin/libopenblas.dll ./build/bin/Release/openblas.dll
919
915
cp $env:RUNNER_TEMP/OpenBLAS.LICENSE.txt ./build/bin/Release/OpenBLAS-${env:OPENBLAS_VERSION}.txt
920
916
921
- - name : Check AVX512F support
922
- id : check_avx512f
923
- if : ${{ matrix.build == 'avx512-x64' }}
924
- continue-on-error : true
925
- run : |
926
- cd build
927
- $vcdir = $(vswhere -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath)
928
- $msvc = $(join-path $vcdir $('VC\Tools\MSVC\'+$(gc -raw $(join-path $vcdir 'VC\Auxiliary\Build\Microsoft.VCToolsVersion.default.txt')).Trim()))
929
- $cl = $(join-path $msvc 'bin\Hostx64\x64\cl.exe')
930
- echo 'int main(void){unsigned int a[4];__cpuid(a,7);return !(a[1]&65536);}' >> avx512f.c
931
- & $cl /O2 /GS- /kernel avx512f.c /link /nodefaultlib /entry:main
932
- .\avx512f.exe && echo "AVX512F: YES" && ( echo HAS_AVX512F=1 >> $env:GITHUB_ENV ) || echo "AVX512F: NO"
933
-
934
917
- name : Test
935
918
id : cmake_test
936
- # not all machines have native AVX-512
937
- if : ${{ matrix.build != 'msvc-arm64' && matrix.build != 'llvm-arm64' && matrix.build != 'llvm-arm64-opencl-adreno' && matrix.build != 'kompute-x64' && matrix.build != 'vulkan-x64' && (matrix.build != 'avx512-x64' || env.HAS_AVX512F == '1') }}
919
+ if : ${{ matrix.build != 'llvm-arm64' && matrix.build != 'llvm-arm64-opencl-adreno' }}
938
920
run : |
939
921
cd build
940
922
ctest -L main -C Release --verbose --timeout 900
941
923
942
- - name : Test (Intel SDE)
943
- id : cmake_test_sde
944
- if : ${{ matrix.build == 'avx512-x64' && env.HAS_AVX512F == '0' }} # use Intel SDE for AVX-512 emulation
945
- run : |
946
- curl.exe -o $env:RUNNER_TEMP/sde.tar.xz -L "https://downloadmirror.intel.com/813591/sde-external-${env:SDE_VERSION}-win.tar.xz"
947
- # for some weird reason windows tar doesn't like sde tar.xz
948
- 7z x "-o${env:RUNNER_TEMP}" $env:RUNNER_TEMP/sde.tar.xz
949
- 7z x "-o${env:RUNNER_TEMP}" $env:RUNNER_TEMP/sde.tar
950
- $sde = $(join-path $env:RUNNER_TEMP sde-external-${env:SDE_VERSION}-win/sde.exe)
951
- cd build
952
- $env:LLAMA_SKIP_TESTS_SLOW_ON_EMULATOR = 1
953
- & $sde -future -- ctest -L main -C Release --verbose --timeout 900
924
+ # TODO: disabled for now, consider adding tests for all CPU variants instead
925
+ # - name: Test (Intel SDE)
926
+ # id: cmake_test_sde
927
+ # if: ${{ matrix.build == 'avx512-x64' && env.HAS_AVX512F == '0' }} # use Intel SDE for AVX-512 emulation
928
+ # run: |
929
+ # curl.exe -o $env:RUNNER_TEMP/sde.tar.xz -L "https://downloadmirror.intel.com/813591/sde-external-${env:SDE_VERSION}-win.tar.xz"
930
+ # # for some weird reason windows tar doesn't like sde tar.xz
931
+ # 7z x "-o${env:RUNNER_TEMP}" $env:RUNNER_TEMP/sde.tar.xz
932
+ # 7z x "-o${env:RUNNER_TEMP}" $env:RUNNER_TEMP/sde.tar
933
+ # $sde = $(join-path $env:RUNNER_TEMP sde-external-${env:SDE_VERSION}-win/sde.exe)
934
+ # cd build
935
+ # $env:LLAMA_SKIP_TESTS_SLOW_ON_EMULATOR = 1
936
+ # & $sde -future -- ctest -L main -C Release --verbose --timeout 900
954
937
955
938
- name : Determine tag name
956
939
id : tag
@@ -1035,7 +1018,7 @@ jobs:
1035
1018
uses :
hendrikmuhs/[email protected]
1036
1019
with :
1037
1020
key : ${{ github.job }}-${{ matrix.cuda }}-${{ matrix.build }}
1038
- variant : sccache
1021
+ variant : ccache
1039
1022
evict-old-files : 1d
1040
1023
1041
1024
- name : Install Cuda Toolkit 11.7
@@ -1113,6 +1096,8 @@ jobs:
1113
1096
cmake -S . -B build -G "Ninja Multi-Config" ^
1114
1097
-DLLAMA_BUILD_SERVER=ON ^
1115
1098
-DGGML_NATIVE=OFF ^
1099
+ -DGGML_BACKEND_DL=ON ^
1100
+ -DGGML_CPU_ALL_VARIANTS=ON ^
1116
1101
-DGGML_CUDA=ON ^
1117
1102
-DGGML_RPC=ON ^
1118
1103
-DCURL_LIBRARY="%CURL_PATH%/lib/libcurl.dll.a" -DCURL_INCLUDE_DIR="%CURL_PATH%/include"
@@ -1187,7 +1172,7 @@ jobs:
1187
1172
uses :
hendrikmuhs/[email protected]
1188
1173
with :
1189
1174
key : windows-latest-cmake-sycl
1190
- variant : sccache
1175
+ variant : ccache
1191
1176
evict-old-files : 1d
1192
1177
1193
1178
- name : Install
@@ -1417,6 +1402,7 @@ jobs:
1417
1402
-DGGML_METAL_EMBED_LIBRARY=ON \
1418
1403
-DLLAMA_CURL=OFF \
1419
1404
-DLLAMA_BUILD_EXAMPLES=OFF \
1405
+ -DLLAMA_BUILD_TOOLS=OFF \
1420
1406
-DLLAMA_BUILD_TESTS=OFF \
1421
1407
-DLLAMA_BUILD_SERVER=OFF \
1422
1408
-DCMAKE_SYSTEM_NAME=iOS \
0 commit comments