[gmx-developers] Using graphics coprocessors for MD

Erik Lindahl lindahl at csb.stanford.edu
Fri Apr 23 11:15:48 CEST 2004

Hehe :-)

I've already got a collaboration going with the people involved in 
Brook, and we've been able to use a (heavily) modified version of 
Gromacs to run a water system on the next-generation ATI GPU.

Right now there are a couple of problems:

1. The GPU compiler sucks for complex code, so Ian Buck at Stanford had 
to handcode the innerloop in assembly for the GPU.
2. You cannot have arrays of variable length, so we've had to load 
neighborlists as 2D-textures and use some tricks :-)
3. Currently the GPUs only support 24 bit floating point, which isn't 
enough for us.
4. The theoretical performance is incredibly (200Gflop), but it drops 
very fast when you start to use more registers (complicated to explain, 
but confirmed by ATI/NVidia). Our current performance is about 50% of 
what you get from SSE on a recent P4.

Still, it could be interesting for the future. The future DirectX9 (or 
10?) apparently specifies 32-bit FP as the standard, and Graphics card 
seem to improve faster than CPUs right now...



On Apr 23, 2004, at 8:48 AM, Lieven Buts wrote:

> I recently came across a discussion about the use of the ever more 
> powerful
> graphics processors (GPU's) on modern video boards as general-purpose
> coprocessors. There are at least two projects considering the 
> possibilities:
> BrookGPU:
> http://graphics.stanford.edu/projects/brookgpu/index.html
> GPGPU (general purpose GPU):
> http://www.gpgpu.org/
> The latter site presents a number of implemented algorithms, including 
> 2D FFT.
> I was just wondering if any of this could be useful in the context of
> molecular dynamics. I would imagine there have to be some 
> opportunities, but
> there are undoubtedly many practical obstacles to really useful 
> applications.
> -- 
> Lieven Buts
> Department of Ultrastructure
> Vrije Universiteit Brussel
> _______________________________________________
> gmx-developers mailing list
> gmx-developers at gromacs.org
> http://www.gromacs.org/mailman/listinfo/gmx-developers
> Please don't post (un)subscribe requests to the list. Use the
> www interface or send it to gmx-developers-request at gromacs.org.

More information about the gromacs.org_gmx-developers mailing list