cudarc icon indicating copy to clipboard operation
cudarc copied to clipboard

cuSolver support

Open MathisWellmann opened this issue 1 year ago • 1 comments

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!

MathisWellmann avatar Jun 20 '23 17:06 MathisWellmann

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!

coreylowman avatar Jun 21 '23 13:06 coreylowman