-
Notifications
You must be signed in to change notification settings - Fork 50
Description
Hello!
I am interested in using Julia/imfilter for a deconvolution problem in particle physics. In short, our experiment (http://next.ific.uv.es/next/) takes "electronic movies" of electrons propagating in dense xenon gas. We divide those pictures in a stack of about 100 2D images. Each image is "blurred" by the diffusion of the ionisation electrons on their way to our sensors, but the diffusion can be very well described (by a kernel approximately gaussian) and thus we can deconvolve our pictures and reconstuct the track, using a classical Richardson-Lucy deconvolution. If curious see:
Boosting background suppression in the NEXT experiment through Richardson-Lucy deconvolution
2102.11931 [physics.ins-det]
The algorithm (and all our software) is implemented in python (+numpy, scipy, etc). LR algoritm is implemented in scikit-images, one of the libraries of the ecosystem and is pretty fast, but not fast enough for our problem. Tipically we take about 2.5 seconds per image, so about 30 seconds per event... and we need to process zillions of events. Currently we solve the problem by butre force, running in large clusters one event per node. Clearly not optimal.
The problem appears to be well suited for GPUS, since it involves loops and more loops of convolutions. I have implemented RL in Julia, using imfilter (it was suprisingly easy, the interface and doc is very clever, congrats!) and I have checked that it runs pretty fast in the CPU (about 0.5 second in my Mac, in multi-thread mode). Now I would like to port the algorithm to GPUs. The docs indicate that one could in principle call imfilter invoking CudaLibs() as resource, but I have failed to find a single example of anyone trying this.
So my question (apologies for the long intro). Can one run imfilter with CudaLibs() out of the box today? If yes, is there a practical example, a test, a tutorial one can look at? If not, are there plans to implement it?
Thanks a lot and congrats for a really clever library