On 26/02/15 18:48, Jason Swails wrote:
On Thu, 2015-02-26 at 16:53 +0000, Sturla Molden wrote:
GPU computing is great if you have the following:

1. Your data structures are arrays floating point numbers.

It actually works equally great, if not better, for integers.

Right, but not complicated data structures with a lot of references or pointers. It requires data are laid out in regular arrays, and then it acts on these arrays in a data-parallel manner. It is designed to process vertices in parallel for computer graphics, and that is a limitation which is always there. It is not a CPU with 1024 cores. It is a "floating point monster" which can process 1024 vectors in parallel. You write a tiny kernel in a C-like language (CUDA, OpenCL) to process one vector, and then it will apply the kernel to all the vectors in an array of vectors. It is very comparable to how GLSL and Direct3D vertex and fragment shaders work. (The reason for which should be obvious.) The GPU is actually great for a lot of things in science, but it is not a CPU. The biggest mistake in the GPGPU hype is the idea that the GPU will behave like a CPU with many cores.

Sturla









--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to