OpenBLAS
Status
OpenBLAS can be built from source for WoA using LLVM toolchain (clang-cl and flang)
Installer available for v3.30 onwards (
Release OpenBLAS 0.3.30 version · OpenMathLib/OpenBLAS )
Build from Source
Requirements
LLVM >= 17.0.4
(<= 16 emits conflicting symbols_QQ*, <= 17.0.3 mlir conflicting symbol)CMake >= 3.28 (previous version fail with flang targeting MSVC ABI)
Build Steps
Clone OpenBLAS from
GitHub - OpenMathLib/OpenBLAS: OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version. git clone https://github.com/OpenMathLib/OpenBLAS cd OpenBLAS mkdir build cd build cmake .. -G Ninja -DCMAKE_C_COMPILER=clang-cl -DCMAKE_Fortran_COMPILER=flang-new -DBUILD_SHARED_LIBS=TRUE -DCMAKE_BUILD_TYPE=Release ninja
Related PRs
https://gitlab.kitware.com/cmake/cmake/-/merge_requests/8852
LLVM 17.0.4 fix:
PR for llvm/llvm-project#70458 by llvmbot · Pull Request #752 · llvm/llvm-project-release-prs
Binary availability
OpenBLAS has to be built from source for windows-arm64.
Release OpenBLAS 0.3.30 version · OpenMathLib/OpenBLAS
CI
There is no official windows-arm64 CI running for OpenBLAS, due to lack of machines on GitHub Actions. We run a downstream nightly CI (building develop branch and running tests) on our infrastructure:
linaro / WindowsOnArm / nightly · GitLab.