Post by taranu on Nov 27, 2017 17:17:26 GMT 8
Dear ProFiteers,
As you may already know thanks to the email announcement, ProFit 1.1 is now available. In case you didn't get the email, I'll copy the text Aaron wrote below. Please give it a try and head over to the Using ProFit forum to report your successes/failures/complaints/compliments.
====
Hi All,
After a long process of developing the GPU branch of libprofit (C++ library), ProFit (R) and PyProfit (Python), I am very pleased that it has now been brought in to the main branch and is available for immediate use from GitHub:
github.com/ICRAR/ProFit
Rodrigo did much of the low level implementation of OpenCL and OpenMP, and Dan Taranu did most of the work on getting the automatic benchmarking working nicely (so it find the fastest method for you automatically).
In brief you can now construct images using your CPU / GPU / OpenMP (multiple cores). You can also convolve images using your CPU / GPU / OpenMP / FFTW. Which combination works fastest depends slightly on the problem at hand (size of the PSF etc).
Instructions to get you started are at:
rpubs.com/asgr/274426
Also have a look at ?profitBenchmark within R to find out a bit more about how these work.
Pretty substantial speedups are possible, e.g. using my own laptop I can compute PSF convolution about 10 times faster using by GPU over a single thread on my CPU:
Where this is likely to be handy is when fitting a single galaxy on your own laptop. When fitting large batches you will often do better spawning off multiple job using one of the parallel processing packages available in R (e.g. foreach). That said, if a target machine has lots of modern GPUs (gSTAR etc) handy then you might do even better splitting jobs across these.
The final step will be adding an OpenCL FFT convolver option (prototype is already working). I think at that stage we have integrated all the big architecture improvements we wanted to add in.
Cheers,
Aaron
As you may already know thanks to the email announcement, ProFit 1.1 is now available. In case you didn't get the email, I'll copy the text Aaron wrote below. Please give it a try and head over to the Using ProFit forum to report your successes/failures/complaints/compliments.
====
Hi All,
After a long process of developing the GPU branch of libprofit (C++ library), ProFit (R) and PyProfit (Python), I am very pleased that it has now been brought in to the main branch and is available for immediate use from GitHub:
github.com/ICRAR/ProFit
Rodrigo did much of the low level implementation of OpenCL and OpenMP, and Dan Taranu did most of the work on getting the automatic benchmarking working nicely (so it find the fastest method for you automatically).
In brief you can now construct images using your CPU / GPU / OpenMP (multiple cores). You can also convolve images using your CPU / GPU / OpenMP / FFTW. Which combination works fastest depends slightly on the problem at hand (size of the PSF etc).
Instructions to get you started are at:
rpubs.com/asgr/274426
Also have a look at ?profitBenchmark within R to find out a bit more about how these work.
Pretty substantial speedups are possible, e.g. using my own laptop I can compute PSF convolution about 10 times faster using by GPU over a single thread on my CPU:
Where this is likely to be handy is when fitting a single galaxy on your own laptop. When fitting large batches you will often do better spawning off multiple job using one of the parallel processing packages available in R (e.g. foreach). That said, if a target machine has lots of modern GPUs (gSTAR etc) handy then you might do even better splitting jobs across these.
The final step will be adding an OpenCL FFT convolver option (prototype is already working). I think at that stage we have integrated all the big architecture improvements we wanted to add in.
Cheers,
Aaron