Ripserer.jl
Ripserer.jl copied to clipboard
On multithreading support?
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.
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.
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.