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.