Skip to content

Commit 739403d

Browse files
committed
ci : use dynamic libopenblas.dll for window-blas
This commit updates the windows-blas job to use the dynamic (can load different kernels depending of the CPU arch) libopenblas.dll instead of the "static" openblas.dll that get installed by vcpgk. The motivation for this change is that there have been reports of performance drops in later version specifically related to blas. Please see the links below for more details. Resolves: ggml-org#3166 Refs: ggml-org#2666 (comment)
1 parent 62dc8f7 commit 739403d

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

.github/workflows/build.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -629,11 +629,14 @@ jobs:
629629
arch: [Win32, x64]
630630
blas: [ON]
631631
sdl2: [ON]
632+
blasver: [0.3.29]
632633
include:
633634
- arch: Win32
634635
s2arc: x86
636+
blasfile: x86
635637
- arch: x64
636638
s2arc: x64
639+
blasfile: x64_64
637640
- sdl2: ON
638641
s2ver: 2.28.5
639642

@@ -654,7 +657,8 @@ jobs:
654657
- name: Install OpenBLAS and pkgconfiglite
655658
if: matrix.blas == 'ON'
656659
run: |
657-
vcpkg install --triplet=${{ matrix.s2arc }}-windows openblas
660+
Invoke-WebRequest "https://github.com/OpenMathLib/OpenBLAS/releases/download/v${{matrix.blasver}}/OpenBLAS-${{matrix.blasver}}_${{matrix.blasfile}}.zip" -OutFile "OpenBLAS-${{matrix.blasver}}.zip"
661+
Expand-Archive "OpenBLAS-${{matrix.blasver}}.zip" -DestinationPath "OpenBLAS-${{matrix.blasver}}"
658662
choco install pkgconfiglite
659663
660664
- name: Fetch SDL2 and set SDL2_DIR
@@ -671,6 +675,8 @@ jobs:
671675
-DCMAKE_BUILD_TYPE=${{ matrix.build }}
672676
-DGGML_BLAS=${{ matrix.blas }}
673677
-DGGML_BLAS_VENDOR=OpenBLAS
678+
-DBLAS_LIBRARIES="OpenBLAS-${{matrix.blasver}}/lib/libopenblas.lib"
679+
-DBLAS_INCLUDE_DIRS="OpenBLAS-${{matrix.blasver}}/include"
674680
-DWHISPER_SDL2=${{ matrix.sdl2 }}
675681
676682
- name: Build

0 commit comments

Comments
 (0)