@@ -32,12 +32,12 @@ concurrency:
3232env :
3333 GGML_NLOOP : 3
3434 GGML_N_THREADS : 1
35- LLAMA_LOG_COLORS : 1
36- LLAMA_LOG_PREFIX : 1
37- LLAMA_LOG_TIMESTAMPS : 1
35+ LLAMA_ARG_LOG_COLORS : 1
36+ LLAMA_ARG_LOG_PREFIX : 1
37+ LLAMA_ARG_LOG_TIMESTAMPS : 1
3838
3939jobs :
40- macOS -latest-ios :
40+ macos -latest-arm64 :
4141 runs-on : macos-latest
4242
4343 steps :
@@ -48,27 +48,66 @@ jobs:
4848 - name : ccache
4949 uses : ggml-org/ccache-action@v1.2.21
5050 with :
51- key : macOS-latest-ios
51+ key : apple-arm64
5252 evict-old-files : 1d
5353 save : ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
5454
5555 - name : Build
5656 id : cmake_build
5757 run : |
5858 sysctl -a
59- cmake -B build -G Xcode \
59+ cmake -B build \
60+ -DCMAKE_BUILD_RPATH="@loader_path" \
61+ -DLLAMA_FATAL_WARNINGS=ON \
62+ -DLLAMA_BUILD_BORINGSSL=ON \
6063 -DGGML_METAL_USE_BF16=ON \
61- -DGGML_METAL_EMBED_LIBRARY=ON \
62- -DLLAMA_BUILD_APP=OFF \
63- -DLLAMA_BUILD_COMMON=OFF \
64- -DLLAMA_BUILD_EXAMPLES=OFF \
65- -DLLAMA_BUILD_TOOLS=OFF \
66- -DLLAMA_BUILD_TESTS=OFF \
67- -DLLAMA_BUILD_SERVER=OFF \
68- -DCMAKE_SYSTEM_NAME=iOS \
69- -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 \
70- -DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=ggml
71- cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO
64+ -DGGML_METAL_EMBED_LIBRARY=OFF \
65+ -DGGML_METAL_SHADER_DEBUG=ON \
66+ -DGGML_RPC=ON
67+ time cmake --build build --config Release -j $(sysctl -n hw.logicalcpu)
68+ 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
69+
70+ - name : Test
71+ id : cmake_test
72+ run : |
73+ cd build
74+ ctest -L main -E "test-llama-archs" --verbose --timeout 900
75+
76+ macos-latest-x64 :
77+ runs-on : macos-15-intel
78+
79+ steps :
80+ - name : Clone
81+ id : checkout
82+ uses : actions/checkout@v6
83+
84+ - name : ccache
85+ uses : ggml-org/ccache-action@v1.2.21
86+ with :
87+ key : apple-x64
88+ evict-old-files : 1d
89+ save : ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
90+
91+ - name : Build
92+ id : cmake_build
93+ run : |
94+ sysctl -a
95+ # Metal is disabled due to intermittent failures with Github runners not having a GPU:
96+ # https://github.com/ggml-org/llama.cpp/actions/runs/8635935781/job/23674807267#step:5:2313
97+ cmake -B build \
98+ -DCMAKE_BUILD_RPATH="@loader_path" \
99+ -DLLAMA_FATAL_WARNINGS=ON \
100+ -DLLAMA_BUILD_BORINGSSL=ON \
101+ -DGGML_METAL=OFF \
102+ -DGGML_RPC=ON \
103+ -DCMAKE_OSX_DEPLOYMENT_TARGET=13.3
104+ time cmake --build build --config Release -j $(sysctl -n hw.logicalcpu)
105+
106+ - name : Test
107+ id : cmake_test
108+ run : |
109+ cd build
110+ ctest -L main --verbose --timeout 900
72111
73112 macos-latest-ios-xcode :
74113 runs-on : macos-latest
@@ -117,18 +156,19 @@ jobs:
117156 xcodebuild -downloadPlatform iOS
118157 xcodebuild -project examples/llama.swiftui/llama.swiftui.xcodeproj -scheme llama.swiftui -sdk iphoneos CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= -destination 'generic/platform=iOS' FRAMEWORK_FOLDER_PATH=./build-ios build
119158
120- macOS -latest-tvos :
159+ macos -latest-tvos :
121160 runs-on : macos-latest
122161
123162 steps :
124163 - name : Clone
125164 id : checkout
126165 uses : actions/checkout@v6
127166
167+ # TODO: this likely does not do anything - if yes, remove it
128168 - name : ccache
129169 uses : ggml-org/ccache-action@v1.2.21
130170 with :
131- key : macOS-latest -tvos
171+ key : apple -tvos
132172 evict-old-files : 1d
133173 save : ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
134174
@@ -150,14 +190,22 @@ jobs:
150190 -DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=ggml
151191 cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO
152192
153- macOS -latest-visionos :
193+ macos -latest-visionos :
154194 runs-on : macos-latest
155195
156196 steps :
157197 - name : Clone
158198 id : checkout
159199 uses : actions/checkout@v6
160200
201+ # TODO: this likely does not do anything - if yes, remove it
202+ - name : ccache
203+ uses : ggml-org/ccache-action@v1.2.21
204+ with :
205+ key : apple-visionos
206+ evict-old-files : 1d
207+ save : ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
208+
161209 - name : Build
162210 id : cmake_build
163211 run : |
@@ -176,7 +224,7 @@ jobs:
176224 -DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=ggml
177225 cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO
178226
179- macOS -latest-swift :
227+ macos -latest-swift :
180228 runs-on : macos-latest
181229 needs : macos-latest-ios-xcode
182230
@@ -189,10 +237,11 @@ jobs:
189237 id : checkout
190238 uses : actions/checkout@v6
191239
240+ # TODO: this likely does not do anything - if yes, remove it
192241 - name : ccache
193242 uses : ggml-org/ccache-action@v1.2.21
194243 with :
195- key : macOS-latest -swift
244+ key : apple -swift
196245 evict-old-files : 1d
197246 save : ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
198247
0 commit comments