Skip to content

Commit 36a64a2

Browse files
authored
ci : re-enable Windows cublas build (ggml-org#2676)
* Enable Windows cublas build * Re-add v12 cuda
1 parent c84b83c commit 36a64a2

File tree

1 file changed

+67
-66
lines changed

1 file changed

+67
-66
lines changed

.github/workflows/build.yml

Lines changed: 67 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -430,72 +430,73 @@ jobs:
430430
name: whisper-blas-bin-${{ matrix.arch }}
431431
path: build/bin/${{ matrix.build }}
432432

433-
# TODO: fix and re-enable
434-
# windows-cublas:
435-
# runs-on: windows-2019
436-
#
437-
# strategy:
438-
# matrix:
439-
# build: [Release]
440-
# arch: [x64]
441-
# cublas: [ON]
442-
# sdl2: [ON]
443-
# cuda-toolkit: [12.2.0, 11.8.0]
444-
# include:
445-
# - arch: x64
446-
# s2arc: x64
447-
# - sdl2: ON
448-
# s2ver: 2.28.5
449-
#
450-
# steps:
451-
# - name: Clone
452-
# uses: actions/checkout@v4
453-
#
454-
# - name: Add msbuild to PATH
455-
# uses: microsoft/setup-msbuild@v2
456-
#
457-
# - name: Install CUDA Toolkit
458-
# id: cuda-toolkit
459-
# uses: Jimver/[email protected]
460-
# with:
461-
# cuda: '${{ matrix.cuda-toolkit }}'
462-
#
463-
# - name: Fetch SDL2 and set SDL2_DIR
464-
# if: matrix.sdl2 == 'ON'
465-
# run: |
466-
# C:/msys64/usr/bin/wget.exe -qO sdl2.zip https://github.com/libsdl-org/SDL/releases/download/release-${{ matrix.s2ver }}/SDL2-devel-${{ matrix.s2ver }}-VC.zip
467-
# 7z x sdl2.zip
468-
# echo "SDL2_DIR=$env:GITHUB_WORKSPACE/SDL2-${{ matrix.s2ver }}/cmake" >> $env:GITHUB_ENV
469-
#
470-
# - name: Configure
471-
# run: >
472-
# cmake -S . -B ./build -A ${{ matrix.arch }}
473-
# -DCMAKE_BUILD_TYPE=${{ matrix.build }}
474-
# -DGGML_CUDA=${{ matrix.cublas }}
475-
# -DWHISPER_SDL2=${{ matrix.sdl2 }}
476-
#
477-
# - name: Build ${{ matrix.cuda-toolkit }}
478-
# run: |
479-
# cd ./build
480-
# cmake --build . --config ${{ matrix.build }}
481-
#
482-
# - name: Copy CUDA DLLs
483-
# run: >
484-
# Copy-Item -PassThru
485-
# -Path "${{ steps.cuda-toolkit.outputs.CUDA_PATH }}/bin/*.dll"
486-
# -Include cudart64_*,cublas64_*,cublasLt64_*
487-
# -Destination build/bin/${{ matrix.build }}
488-
#
489-
# - name: Copy SDL2.dll
490-
# if: matrix.sdl2 == 'ON'
491-
# run: copy "$env:SDL2_DIR/../lib/${{ matrix.s2arc }}/SDL2.dll" build/bin/${{ matrix.build }}
492-
#
493-
# - name: Upload binaries
494-
# if: matrix.sdl2 == 'ON'
495-
# uses: actions/upload-artifact@v4
496-
# with:
497-
# name: whisper-cublas-${{ matrix.cuda-toolkit }}-bin-${{ matrix.arch }}
498-
# path: build/bin/${{ matrix.build }}
433+
windows-cublas:
434+
runs-on: windows-2019
435+
strategy:
436+
matrix:
437+
build: [Release]
438+
arch: [x64]
439+
cublas: [ON]
440+
sdl2: [ON]
441+
cuda-toolkit: [12.2.0, 11.8.0]
442+
include:
443+
- arch: x64
444+
sdl2: ON
445+
sdl2_ver: 2.28.5
446+
steps:
447+
- name: Clone repository
448+
uses: actions/checkout@v4
449+
450+
- name: Add msbuild to PATH
451+
uses: microsoft/setup-msbuild@v2
452+
453+
- name: Install CUDA Toolkit
454+
id: cuda-toolkit
455+
uses: Jimver/[email protected]
456+
with:
457+
cuda: '${{ matrix.cuda-toolkit }}'
458+
459+
- name: Install 7-Zip
460+
run: choco install 7zip -y
461+
462+
- name: Fetch SDL2 and set SDL2_DIR
463+
if: matrix.sdl2 == 'ON'
464+
run: |
465+
Invoke-WebRequest -Uri https://github.com/libsdl-org/SDL/releases/download/release-${{ matrix.sdl2_ver }}/SDL2-devel-${{ matrix.sdl2_ver }}-VC.zip -OutFile sdl2.zip
466+
7z x sdl2.zip
467+
echo "SDL2_DIR=${{ github.workspace }}\SDL2-${{ matrix.sdl2_ver }}\cmake" | Out-File -FilePath $env:GITHUB_ENV -Append
468+
echo "${{ github.workspace }}\SDL2-${{ matrix.sdl2_ver }}\cmake" > SDL2_PATH.txt
469+
470+
- name: Configure CMake
471+
shell: cmd
472+
run: |
473+
cmake -S . -B ./build -A ${{ matrix.arch }} ^
474+
-DCMAKE_BUILD_TYPE=${{ matrix.build }} ^
475+
-DGGML_CUDA=${{ matrix.cublas }} ^
476+
-DCMAKE_CUDA_ARCHITECTURES=all ^
477+
-DWHISPER_SDL2=${{ matrix.sdl2 }} ^
478+
-DSDL2_DIR="%SDL2_DIR%"
479+
480+
- name: Build Project
481+
shell: cmd
482+
run: |
483+
cd ./build
484+
cmake --build . --config ${{ matrix.build }}
485+
486+
- name: Copy CUDA DLLs
487+
run: |
488+
Get-ChildItem "${{ steps.cuda-toolkit.outputs.CUDA_PATH }}/bin/" -Filter "*.dll" |
489+
Copy-Item -Destination "build/bin/${{ matrix.build }}"
490+
491+
- name: Copy SDL2.dll
492+
if: matrix.sdl2 == 'ON'
493+
run: copy "$env:SDL2_DIR/../lib/${{ matrix.arch }}/SDL2.dll" build/bin/${{ matrix.build }}
494+
495+
- name: Upload binaries
496+
uses: actions/upload-artifact@v4
497+
with:
498+
name: whisper-cublas-${{ matrix.cuda-toolkit }}-bin-${{ matrix.arch }}
499+
path: build/bin/${{ matrix.build }}
499500

500501
emscripten:
501502
runs-on: ubuntu-latest

0 commit comments

Comments
 (0)