Added ability to accumulate in FP16. Convert BF16 to FP32. For FP16 and BF16 GEMM in RISC-V (BF16 now works for pre-RVA23) #630
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Windows ARM64 CI | |
| on: | |
| push: | |
| branches: | |
| - develop | |
| pull_request: | |
| branches: | |
| - develop | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read # to fetch code (actions/checkout) | |
| jobs: | |
| build: | |
| if: "github.repository == 'OpenMathLib/OpenBLAS'" | |
| runs-on: windows-11-arm | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v3 | |
| - name: Install LLVM for Win-ARM64 | |
| shell: pwsh | |
| run: | | |
| Invoke-WebRequest https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.8/LLVM-20.1.8-woa64.exe -UseBasicParsing -OutFile LLVM-woa64.exe | |
| Start-Process -FilePath ".\LLVM-woa64.exe" -ArgumentList "/S" -Wait | |
| echo "C:\Program Files\LLVM\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append | |
| #dir "C:\Program Files\LLVM\include\flang" | |
| #rmdir /Q /S "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/Llvm/ARM64" | |
| - name: Install CMake and Ninja for Win-ARM64 | |
| shell: pwsh | |
| run: | | |
| Invoke-WebRequest https://github.com/Kitware/CMake/releases/download/v3.29.4/cmake-3.29.4-windows-arm64.msi -OutFile cmake-arm64.msi | |
| Start-Process msiexec.exe -ArgumentList "/i cmake-arm64.msi /quiet /norestart" -Wait | |
| echo "C:\Program Files\CMake\bin" >> $env:GITHUB_PATH | |
| Invoke-WebRequest https://github.com/ninja-build/ninja/releases/download/v1.13.1/ninja-winarm64.zip -OutFile ninja-winarm64.zip | |
| Expand-Archive ninja-winarm64.zip -DestinationPath ninja | |
| Copy-Item ninja\ninja.exe -Destination "C:\Windows\System32" | |
| - name: Configure OpenBLAS | |
| shell: cmd | |
| run: | | |
| CALL "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsarm64.bat" | |
| set PATH=C:\Program Files\LLVM\bin;%PATH% | |
| mkdir build | |
| cd build | |
| cmake .. -G Ninja ^ | |
| -DCMAKE_BUILD_TYPE=Release ^ | |
| -DTARGET=ARMV8 ^ | |
| -DBINARY=64 ^ | |
| -DCMAKE_C_COMPILER=clang-cl ^ | |
| -DCMAKE_Fortran_COMPILER=flang-new ^ | |
| -DBUILD_SHARED_LIBS=ON ^ | |
| -DCMAKE_SYSTEM_PROCESSOR=arm64 ^ | |
| -DCMAKE_SYSTEM_NAME=Windows ^ | |
| -DCMAKE_INSTALL_PREFIX=C:/opt | |
| - name: Build OpenBLAS | |
| shell: cmd | |
| run: | | |
| cd build | |
| ninja -j16 | |
| - name: Install OpenBLAS | |
| shell: cmd | |
| run: | | |
| cd build | |
| cmake --install . | |
| - name: Run ctests | |
| shell: pwsh | |
| run: | | |
| $env:PATH = "C:\opt\bin;$env:PATH" | |
| cd build | |
| ctest | |