zerothi / sisl

Electronic structure Python package for post analysis and large scale tight-binding DFT/NEGF calculations
https://zerothi.github.io/sisl
Mozilla Public License 2.0
173 stars 57 forks source link

Enabling GPU acceleration #518

Open pfebrer opened 1 year ago

pfebrer commented 1 year ago

I found this project called cupy: https://cupy.dev/ that mimicks exactly the APIs of both numpy and scipy, but does the computations on GPU.

It seems to already have gained some popularity and traction, so perhaps it would be nice to keep it in mind if at some point we want to provide GPU acceleration for some algorithms in sisl :)

zerothi commented 1 year ago

Yes, I know of the project, however it probably requires that the vectors are pretty large before it makes sense to do anything with cupy, the overhead of communication is typically a bottleneck.

So it would require some testing and also that routines are built for both cpu and gpu usage (via flags or contexts or...) to make the most of sisl.

But great to have on the table!