[gmx-developers] GROMACS OpenCL on Gallium

Vedran Miletić rivanvx at gmail.com
Thu Nov 26 22:37:50 CET 2015

2015-11-26 21:23 GMT+01:00 Szilárd Páll <pall.szilard at gmail.com>:
> Actually, I would argue that if you consider the number of users, GROMACS
> likely has most likely more use on commodity computing resources (that
> includes laptops, workstations, and university basement clusters) than on
> actual HPC iron - even without counting F at H. In terms of cycles burnt that
> may not be the case. Also, I'm not entirely sure what the balance is when in
> terms of where the science output is produced (and I won't even try to
> weight that by quality). However, in terms of raw publication numbers a lot
> of science may not come from GROMACS running on "proper HPC" facilities.
> Than there is the education impact of GROMACS where the situation is very
> non-HPC.
> Hence, a wide-range OpenCL adoption could represent a substantial shift in
> terms of what the average GROMACS users runs on/with. Of course, that won't
> happen from one day to another, but if there were OSS Intel and AMD GPU
> drivers + gcc / clang with decent OpenCL support, it would attract a lot of
> people who will inherently have the hardware in their laptops/desktops
> anyway.
> However, this is a bit of a chicken-egg problem and that's why I believe it
> matters whether we take the back seat or put some effort into having an
> honest alternative! This does not have to be super-tuned, but it does have
> to work, have mostly complete feature support, for further extensions,
> porting, or performance tuning when an opportunity arises, would you not
> agree?
> --
> Szilárd

At my former lab we have been running GROMACS on university's GPU
Education Center workstations equipped with GTX 480 quite a lot.
Provided that you can book them for a while, it's actually a nice
alternative/addition to HPC, depending on what is your requirement.

I completely agree on having open source ecosystem you described. The
stuff is already there, compilers, runtimes, you name it. You can run
PyOpenCL toy examples on r600g (and likely radeonsi, have not tried);
they work out of the box. OpenCL image support is just this missing
piece to make GROMACS run.

This is why this chicken-egg problem is actually not very hard to
solve: most of the development work required is already done and code
is in place. That is why I am putting the effort into getting this to
work. I will try to get GROMACS working on Caicos with the r600g
patches from GSoC next week (if they implement everything we need that
should be pretty straightforward), and then switch to GCN cards and
start implementing the missing pieces (hopefully with a lot of
enthusiasm arising from r600g working on the first try).

I have never done any driver programming, and I will not be able to
work on it full-time. I guess it will take a few months to get
everything working.


Vedran Miletić

More information about the gromacs.org_gmx-developers mailing list