topy icon indicating copy to clipboard operation
topy copied to clipboard

Replace Pysparse with something else for Python 3

Open huntrontrakkr opened this issue 7 years ago • 6 comments

Hello, In order to accelerate a project, I'm attempting to utilize topy with a custom build of pysparse that is built with superlu_dist. The problem is that the include files between superlu and superlu_dist seem to be fairly different. (ex: instead of sp_ddef.h, there is super_ddef.h). I've tried to replace a number of includes within several of the sparse implementations and managed to get some compilation to occur, but it remains a difficult problem. do you know of a simpler way of building the package?

huntrontrakkr avatar Apr 20 '17 19:04 huntrontrakkr

Hello I thought about the acceleration of the optimization. The slowest part is the solution of linear system. I like your suggestion. However, I have some ideas on how to get rid of pysparse. If it is OK to you, you can try another solver. This one is very cool. Could you try to adapt the ToPy for this solver? It uses Fortran. However, it is extremely efficient and seems promising.

ISosnovik avatar Apr 20 '17 19:04 ISosnovik

I could certainly give it a shot depending on time constraints. This does look pretty promising.

huntrontrakkr avatar Apr 20 '17 20:04 huntrontrakkr

Great, Thank you!

ISosnovik avatar Apr 20 '17 20:04 ISosnovik

Seems to be as fast or faster than CHOLMOD, but one will have to test. Still a promising alternative, shouldn't be too difficult to implement since the FEA part in ToPy is fairly simple. Wish I had some time to look at it...

On 20 Apr 2017 10:04 pm, "Ivan Sosnovik" [email protected] wrote:

Great, Thank you!

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/williamhunter/topy/issues/29#issuecomment-295884993, or mute the thread https://github.com/notifications/unsubscribe-auth/ANktUdT70zMU85zqGfE-vG_rNwLwupaYks5rx7pkgaJpZM4NDdnO .

williamhunter avatar Apr 20 '17 20:04 williamhunter

See also this issue #14

williamhunter avatar May 01 '20 13:05 williamhunter

Hello,

I just noticed that CHOLMOD was GPU accelerated (see Nvidia) and it also occurred to me that if you are going for a Python 3 implementation, then GPU accelerated libraries might give you the speed that you are looking for.

CuPy for example, will do versions of SciPy sparse matrix functions and linear algebra using the cuSPARSE library (see documentation)

There is also numba compiler for GPU, which I had a go at implementing yesterday, with zero success, mainly because I'm not very good at python.

Ash

ashcic avatar May 09 '20 02:05 ashcic