-
-
Notifications
You must be signed in to change notification settings - Fork 636
macOS: allow to use Accelerate framework instead of OpenBLAS #40397
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
currently it's not tested on CI, as one needs |
@tobiasdiez - can you think of testing this on the CI? Also, perhaps this can be tried on top of the meson for sagelib build PR. I can't find where in CI I should add |
Since Accelerate is declared the top priority on macos, the current CI is already using it:
Otherwise, we could use the same strategy as numpy (https://github.com/numpy/numpy/blob/82bd6ef31ce57859280be7591c3a20f562e69d34/.github/workflows/macos.yml#L107):
|
I'm surprised the CI works this way, as my experience is that linbox and fflas_ffpack need extra settings as in this branch to work with Accelerate. (This works with Conda-supplied libraries I suppose) |
At the moment, the conda env installs openblas as well (which should then be used by linbox etc). Might be worth a try to force Accelerate via |
I suppose Conda has Accelerate-using Linbox and fflas_ffpack, the question is why you need openblas at all in macos Conda. |
I don't know how conda determines what flavor of blas to install. @isuruf probably is a better person to ask. |
there is no blas to install in Accelerate case - it's in the OS. it's another bunch of downstream packages to install |
a draft of such functionality.
To test it with Homebrew. Get on this branch; have all the needed Homebrew packages installed, follow the usual instructions
at https://doc.sagemath.org/html/en/installation/source.html#macos-package-installation
then before
./configure
andmake
, runto point pkg-config to a "fake" openblas.pc files.
Make sure you don't have openblas (and its downstream: linbox, etc)
already installed by Sage; (e.g.
make distclean
will surely suffice). Run./configure
and check its output near the end, where it reports the list of packages to be installed or used from the system.
Openblas should be marked as not being installed.
Finally, run
make
etc.📝 Checklist
⌛ Dependencies