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

cuSolver support #156

Open
MathisWellmann opened this issue Jun 20, 2023 · 1 comment
Open

cuSolver support #156

MathisWellmann opened this issue Jun 20, 2023 · 1 comment

Comments

@MathisWellmann
Copy link
Contributor

First up this crate is the best IMO and its fun to use!
I wonder if there are plans to support the cuSolver NVIDIA library in the future.
The SVD related functions there are of interest to me in particular.
How much work would it be to add support to that library and how would I (or anyone else) go about adding support for that?
Thanks in advance!

@coreylowman
Copy link
Owner

Thanks, glad you enjoy it! 😁

I don't have any plans myself to do this, but totally open to contributions/helping with contributions for it!

The general steps are:

  1. Add a new cusolver module/feature flag
  2. Add bindgen.sh, wrapper.h files to create the sys level bindings
  3. Generate sys.rs module
  4. Add a result.rs module that wraps around sys & contains an error struct
  5. Add a safe.rs module that wraps around result & is as safe as possible (there may still need to be unsafe apis)

These can all be staged ofc - a first step could just be steps 1-3!

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