-
-
Notifications
You must be signed in to change notification settings - Fork 9
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
Why and how should blas
be added to dependencies
#80
Comments
I think adding it to runtime is pretty obvious then, no? |
This seems to be a weird edge case: I just added
|
On the base or main package? |
@twiecki, on main. Thanks for catching that, I updated my comment above. |
That exact error is due to a failure in |
Looking at the codebase, it doesn't seem like we use the |
I think the |
Thanks so much @mfansler for the feedback!!! If we were to remove Also, from the knowledge base and the BLAS feedstock it seems like the |
Just opened #135 to test |
In my experience it defaults to At least in Conda Forge, the pinnings dictate that
I believe you are correct that ## Note that `conda-forge` channel is prioritized on my system
# MKL
mamba create -n np_mkl python=3.9 numpy 'blas=*=mkl'
# BLIS
mamba create -n np_blis python=3.9 numpy 'blas=*=blis'
# OpenBLAS
mamba create -n np_openblas python=3.9 numpy 'blas=*=openblas'
# Accelerate
mamba create -n np_accelerate python=3.9 numpy 'blas=*=accelerate'
# Netlib
mamba create -n np_netlib python=3.9 numpy 'blas=*=netlib' However, I'm beginning to grok a bit more the motivating problems involved here. The workaround of including Further, A bit of a mess. It seems like
|
@mfansler, many thanks for these insights! |
Oh! - I just noticed that |
I created an Issue in the blas feedstock. Please amend it if my explanation there is not correctly characterizing the needs here. My understanding is that this package requires an |
That sounds correct, and thanks again! |
Last note for the night is that Netlib delivers this with the Netlib implementation of |
What's going on between the blas package's headers and https://github.com/aesara-devs/aesara/blob/main/aesara/tensor/blas_headers.py? |
If I recall correctly, some code uses the custom headers created there and some other code uses the externally provided headers. It was/is a sort of mess. |
Comment:
Motivated by this comment I'd like to centralize the info regarding BLAS requirements for Aesara.
In order to solve these sorts of errors, the
blas
package was added as a host dependency in #48 (see also the links inside).Since Aesara tries to compile with BLAS at runtime, I believe this should instead be a runtime dependency rather than a host dependency.
Unfortunately I don't currently have a very good understanding of the BLAS libraries. The Conda-Forge BLAS docs seem to be written from the perspective of a program which needs to be built using BLAS, rather than a program that relies on dynamic BLAS compilation at runtime.
The text was updated successfully, but these errors were encountered: