Description
running either
python runtests.py --bench-compare <commit1> <commit2>
or
spin bench --compare <commit1> <commit2>
will end up calling
cd benchmark; asv continuous --factor 1.05 --bench main <commit1> <commit2>
Then asv creates a virtualenv for each commit, and uses a vanilla pip install
to build NumPy. While this can work on macOS and linux (and use the system OpenBLAS), it will fail to correctly use OpenBLAS on windows, since the build also needs to
- copy the OpenBLAS DLL into the correct place
- build the
_distributor_init.py
file. In CI this is done via additional post-install code:
Is there a way to, if OpenBLAS is found, to do this as part of the build?
Here is what the various CI invocations to do these steps look like:
numpy/.github/workflows/windows_meson.yml
Lines 63 to 72 in 374e73d
numpy/.github/workflows/windows_clangcl.yml
Lines 66 to 75 in 374e73d
(on azure this also shows the complicated command line needed)
Lines 38 to 48 in 374e73d
numpy/tools/wheels/cibw_before_build.sh
Lines 39 to 56 in 374e73d