@@ -210,6 +210,82 @@ jobs:
210
210
path : |
211
211
llama-${{ env.BRANCH_NAME }}-${{ steps.commit.outputs.short }}-bin-win-${{ matrix.build }}-x64.zip
212
212
213
+ windows-latest-cmake-cublas :
214
+ runs-on : windows-latest
215
+
216
+ strategy :
217
+ matrix :
218
+ cuda : ['12.1.0', '11.7.1']
219
+ build : ['cublas']
220
+
221
+ steps :
222
+ - name : Clone
223
+ id : checkout
224
+ uses : actions/checkout@v1
225
+
226
+
227
+ id : cuda-toolkit
228
+ with :
229
+ cuda : ${{ matrix.cuda }}
230
+ # TODO(green-sky): _dev seems to fail, and non dev are not enought
231
+ # sub-packages: '["nvcc", "cudart", "cublas", "cudart_dev", "cublas_dev"]'
232
+
233
+ - name : Build
234
+ id : cmake_build
235
+ run : |
236
+ mkdir build
237
+ cd build
238
+ cmake .. -DLLAMA_CUBLAS=ON
239
+ cmake --build . --config Release
240
+
241
+ - name : Get commit hash
242
+ id : commit
243
+ if : ${{ ( github.event_name == 'push' && github.ref == 'refs/heads/master' ) || github.event.inputs.create_release == 'true' }}
244
+ uses : pr-mpt/actions-commit-hash@v2
245
+
246
+ - name : Pack artifacts
247
+ id : pack_artifacts
248
+ if : ${{ ( github.event_name == 'push' && github.ref == 'refs/heads/master' ) || github.event.inputs.create_release == 'true' }}
249
+ run : |
250
+ 7z a llama-${{ env.BRANCH_NAME }}-${{ steps.commit.outputs.short }}-bin-win-${{ matrix.build }}-cu${{ matrix.cuda }}-x64.zip .\build\bin\Release\*
251
+
252
+ - name : Upload artifacts
253
+ if : ${{ ( github.event_name == 'push' && github.ref == 'refs/heads/master' ) || github.event.inputs.create_release == 'true' }}
254
+ uses : actions/upload-artifact@v3
255
+ with :
256
+ path : |
257
+ llama-${{ env.BRANCH_NAME }}-${{ steps.commit.outputs.short }}-bin-win-${{ matrix.build }}-cu${{ matrix.cuda }}-x64.zip
258
+
259
+ - name : Copy and pack Cuda runtime
260
+ if : ${{ matrix.cuda == '12.1.0' }}
261
+ # TODO(green-sky): paths are cuda 12 specific
262
+ run : |
263
+ echo "Cuda install location: ${{steps.cuda-toolkit.outputs.CUDA_PATH}}"
264
+ mkdir '.\build\bin\cudart\'
265
+ cp "${{steps.cuda-toolkit.outputs.CUDA_PATH}}\bin\cudart64_12.dll" '.\build\bin\cudart\'
266
+ cp "${{steps.cuda-toolkit.outputs.CUDA_PATH}}\bin\cublas64_12.dll" '.\build\bin\cudart\'
267
+ cp "${{steps.cuda-toolkit.outputs.CUDA_PATH}}\bin\cublasLt64_12.dll" '.\build\bin\cudart\'
268
+ 7z a cudart-llama-bin-win-cu${{ matrix.cuda }}-x64.zip .\build\bin\cudart\*
269
+
270
+ - name : Copy and pack Cuda runtime
271
+ if : ${{ matrix.cuda == '11.7.1' }}
272
+ # TODO(green-sky): paths are cuda 11 specific
273
+ run : |
274
+ echo "Cuda install location: ${{steps.cuda-toolkit.outputs.CUDA_PATH}}"
275
+ mkdir '.\build\bin\cudart\'
276
+ ls "${{steps.cuda-toolkit.outputs.CUDA_PATH}}\bin"
277
+ cp "${{steps.cuda-toolkit.outputs.CUDA_PATH}}\bin\cudart64_110.dll" '.\build\bin\cudart\'
278
+ cp "${{steps.cuda-toolkit.outputs.CUDA_PATH}}\bin\cublas64_11.dll" '.\build\bin\cudart\'
279
+ cp "${{steps.cuda-toolkit.outputs.CUDA_PATH}}\bin\cublasLt64_11.dll" '.\build\bin\cudart\'
280
+ 7z a cudart-llama-bin-win-cu${{ matrix.cuda }}-x64.zip .\build\bin\cudart\*
281
+
282
+ - name : Upload Cuda runtime
283
+ if : ${{ ( github.event_name == 'push' && github.ref == 'refs/heads/master' ) || github.event.inputs.create_release == 'true' }}
284
+ uses : actions/upload-artifact@v3
285
+ with :
286
+ path : |
287
+ cudart-llama-bin-win-cu${{ matrix.cuda }}-x64.zip
288
+
213
289
release :
214
290
if : ${{ ( github.event_name == 'push' && github.ref == 'refs/heads/master' ) || github.event.inputs.create_release == 'true' }}
215
291
@@ -221,6 +297,7 @@ jobs:
221
297
- macOS-latest-make
222
298
- macOS-latest-cmake
223
299
- windows-latest-cmake
300
+ - windows-latest-cmake-cublas
224
301
225
302
steps :
226
303
- name : Download artifacts
0 commit comments