-
-
Notifications
You must be signed in to change notification settings - Fork 10.1k
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
Allow Accelerate linkage, deny veclibfort & lapack #6168
Allow Accelerate linkage, deny veclibfort & lapack #6168
Conversation
- Accelerate provides more than just BLAS and LAPACK functionality, see https://developer.apple.com/documentation/accelerate - Veclibfort exists only to wrap Accelerate's BLAS/LAPACK - LAPACK is a slow, seldom updated reference implementation - Encourage usage of OpenBLAS - Reverts PR Homebrew#6130
LMK if we want/need a unit test. CC: @jonchang Also, I'm really tempted to add |
Could also set BLAS_ROOT and LAPACK_ROOT in the environment to point to OpenBLAS. |
I didn’t know that Accelerate did all of that, so agree with the PR in principle. Though, are there separate dylibs for BLAS vs other functionality? On mobile so can’t check. If so we could narrow it to only warn links against Accelerate’s BLAS while permitting other uses. My concern with setting the default BLAS vendor in |
This PR triggers audit failures whenever I agree with your concerns about I can see if it’s possible to detect if packages are using Accelerate specifically for BLAS/LAPACK |
Does anyone know how to find out which dylibs within a framework are linked against? @jonchang @MikeMcQuaid I can see within the Accelerate Framework there are BLAS and LAPACK specific dylibs, but I'm not sure how to figure out what a dylib (e.g. from veclibfort) links to within a Framework. Any ideas? |
Does brew linkage provide this information? I recall seeing specific libBLAS links but can’t confirm right now. |
No, if something links w/ accelerate it just shows the framework. EDIT
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Makes sense to me, thanks. A much simpler approach seems better and we can always dig into individual errors where need be.
I don’t think we should change the general CMake behaviour. Otherwise 👍🏻 |
Thanks both! |
Accelerate provides more than just BLAS and LAPACK functionality, see
https://developer.apple.com/documentation/accelerate
Veclibfort exists only to wrap Accelerate's BLAS/LAPACK
LAPACK is a slow, seldom updated reference implementation
Encourage usage of OpenBLAS
Reverts PR audit: check Accelerate linkage for core formulae #6130
Have you followed the guidelines in our Contributing document?
Have you checked to ensure there aren't other open Pull Requests for the same change?
Have you added an explanation of what your changes do and why you'd like us to include them?
Have you written new tests for your changes? Here's an example.
Have you successfully run
brew style
with your changes locally?Have you successfully run
brew tests
with your changes locally?