tjof2 / pgure-svt

Singular value thresholding for denoising time-resolved microscopy
https://tjof2.github.io/pgure-svt/
GNU General Public License v3.0
11 stars 4 forks source link

OpenMP parallelization improvements #31

Closed tjof2 closed 4 years ago

tjof2 commented 8 years ago

Parallelization over frames / frame blocks would be better than the current inner-loop implementation.

tjof2 commented 7 years ago

Also figuring out the best way to run on distributed computing architectures. MPI or an alternative?

hentr commented 7 years ago

yeah, I just tested with an 4core/8thread intel i7-6700 @3.4GHz, 512x512 sized frames.

2 threads: 36 sec/fr 4 threads: 30 sec/fr 8 threads: 27 sec/fr

So there's a good room for improvement, is this something that is not too much work? I guess this would be in the C++ part of the code, not python

tjof2 commented 7 years ago

I think its a case of commenting out

And adding in the OpenMP #pragma here:

But this approach would need to take care over:

To avoid competing threads from trying to overwrite the same frame.