Ripserer.jl icon indicating copy to clipboard operation
Ripserer.jl copied to clipboard

On multithreading support?

Open RaimelMedina opened this issue 1 year ago • 2 comments

Hi!

I've been wondering if it's possible to add multithreading or GPU support to the computation of persistence intervals in a straightforward way. This could be particularly desirable for very large filtrations. So far, the only package I've found that supports this is Giotto-tda. Do you think this could be of interest to a wider audience?

I would be happy to help if you believe it's worthwhile.

RaimelMedina avatar Apr 19 '24 14:04 RaimelMedina

Hi, I've actually played around with multithreading not long ago, but the results I was getting were a bit mixed. I didn't always get a nice performance boost and getting it to work correctly was a bit painful. If you want to play around, I can push the code to a branch. I haven't tried the GPU thing because I don't have access to an appropriate GPU and don't have any experience with them. If you know GPU programming, I'd be happy to help with getting it working.

mtsch avatar Jun 03 '24 23:06 mtsch

Hi, I would be happy to give it a try if you are ok with that. I'm specifically interested in the computation of the 0-dim homology but would be definitely cool to see if there is a way to speed up the code for all dims.

RaimelMedina avatar Jun 07 '24 09:06 RaimelMedina