http://stackoverflow.com/questions/5919172/gpgpu-vs-multicore

The answer is really nice.. over GPU/ multithreaded CPU et als. GPU is not a panacea for enterprise programming, but for specific parallel unbranched-no synchronization driven algorithms

* The worst code for GPU is code with less parallelism or code with lots of branches or synchronization.

* Easily vectorizable code: CPU is easier to code but low performance. GPU is slightly harder to code but provides big bang for the buck. For all others, CPU is easier and often better performance as well.

* GPUs don't support interrupts and exception.



On Tue, Aug 5, 2014 at 1:00 AM, stepharo <stepharo@free.fr> wrote:

On 4/8/14 19:46, Alexandre Bergel wrote:
Hi Yuriy,

My advice is to use OpenCL. OpenCL is a standard to use the graphical card to carry out massive computation.
The good news is that Ronie has worked on a binding between OpenCL and Pharo. I am using it and it works pretty well.
http://smalltalkhub.com/#!/~ronsaldo/OpenCL

Alex

�� �� first a good algorithm with a controlled complexity is important.
�� �� If you have a naive algorithm you can wait that the Universe die before getting a result.
�� �� I remember doing stupid algorithm that we speed up with roel from a couple of hours to 20 s.

�� �� Second OpenCL binds you to system having openCL support and this is important to understand it.

Stef

Cheers,
Alexandre