Skip to content
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

Link SUNDIALS with a BLAS & LAPACK implementation #6

Open
bryanwweber opened this issue Jul 29, 2024 · 3 comments
Open

Link SUNDIALS with a BLAS & LAPACK implementation #6

bryanwweber opened this issue Jul 29, 2024 · 3 comments
Assignees

Comments

@bryanwweber
Copy link
Member

This should be fairly easy to do on Linux by updating the manylinux image. Likewise on macOS, we can likely compile something at build time (compile something because otherwise we might end up with mismatched MACOSX_TARGET_VERSION from a brew-installed version). Windows might be a little tougher.

@bryanwweber bryanwweber self-assigned this Aug 1, 2024
@speth
Copy link
Member

speth commented Oct 11, 2024

For Linux, where would the BLAS/LAPACK library come from at runtime? I guess this would require bundling the BLAS/LAPACK shared libraries with Cantera or explicitly linking to a static version of BLAS/LAPACK? Or perhaps piggybacking off of whatever library Numpy bundles, assuming contains all the functions we need.

For macOS, I think the easiest and best option is to just link to the Accelerate framework.

@bryanwweber
Copy link
Member Author

where would the BLAS/LAPACK library come from at runtime

Wheels are always "repaired" so that links are rewritten to a bundled, uniquely named, copy of non-libc and non-libpython dependencies. This is how we're already including libhdf, libfmt, etc.

Accelerate

Yep, that was also my conclusion 👍

@speth
Copy link
Member

speth commented Oct 11, 2024

Ah, I see. Glad to know that this bundling step is an existing feature.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants