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

Outside GPU libraries for GPU functions #167

Open
jpmorgan98 opened this issue Feb 28, 2024 · 1 comment
Open

Outside GPU libraries for GPU functions #167

jpmorgan98 opened this issue Feb 28, 2024 · 1 comment
Assignees

Comments

@jpmorgan98
Copy link
Collaborator

As we start to integrate more advanced hybrid methods on the GPU we are finding that most numpy functions are not supported on the GPU. I think we have two options here (1) reimplement all operations (gemm, LU decomp, etc.) in our own python-numba functions or (2) use CuPy supposed interoperability allowing for zero-overhead copy.

I think 2 is the way to go but would probably require an object mode call to work which is way less then ideal. This is related to #158 and how best to store data with the Cupy array potentially being the way to go.

@jpmorgan98
Copy link
Collaborator Author

Actually I think we should be able to call into CUDA libraries (i.e. cusolver etc.). I believe this is done by pulling things from nvvm. This would be the most seamless thing to do I think and could allow for some from_cpu from_gpu` stuff. This could also eliminate the need to reimplement things like GEMRES as cuda libraries are already written that do that.

More investigation is required tho. This idea came from looking at numba.cuda.tests. Also of interest on this front might be the pyculib package from numba.

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

3 participants