[gmx-users] Optimal hardware for running Gromacs
berquist at buffalo.edu
Sat Mar 12 03:00:17 CET 2016
I'm looking into building a desktop computer for running Gromacs
simulations. I'd like to know how I should configure it to get the best
performance possible for the price.
One example of something I might run on this system would be: simulate an
ionic polymer of approximately 100k atoms for 1 millisecond. Coarse
grained atoms, using Martini force field.
I would be planning to spend something under $1500 on this system.
In regards to the graphics card, what factors are important? I assume that
the single precision Flop/s are a big factor, but what about memory
bandwidth(on the card itself)?
I've noticed that Gromacs pages on GPUs tend to recommend nVidia cards,
specifically those with CUDA Compute Capability 5.2. But, AMD Radeon cards
appear to offer the same processing power for far lower prices(or
alternatively, significantly more processing power for the same price).
For example, the nVidia GTX 970 offers 3494 GFlop/s of single precision,
and 109 GFlop/s of double precision. It currently costs $290 at Newegg.
On the other hand, the AMD Radeon R9 380 provides 3476.5 GFlop/s single
precision, and 217.3 GFlop/s of double precision. It currently costs $150
That's practically the same single precision, and nearly double the
double-precision for around half the price.
Or, for about the same price as the nVidia GTX 970 I could get an AMD
Radeon R9 390. It provides 5120 GFlop/s of single precision and 640
GFlop/s of double precision. That costs $310 on Newegg.
That is, on paper, 46.5% more single precision performance, and 487% more
double precision performance(nearly 5 times as much) for only a 6.9% higher
So, does Gromacs run a lot faster on nVidia GPUs? Would the nVidia GTX 970
provide similar or better performance than the AMD Radeon R9 390?
One more GPU Question; does Gromacs scale linearly across multiple graphics
cards? So, if I have two identical cards which offer 2000 GFlop/s
performance each, would they both together perform about the same as a
more-expensive single card which provides 4000GFlop/s(provided you have a
fast enough CPU, of course)?
Now, how about the CPU performance? Would it be better to spend a lot of
my budget on a high-end GPU, and then go for a low cost CPU? Something
like an AMD Athlon X4 860K Kaveri Quad-Core 3.7 GHz CPU? Or would
something like that bottleneck the performance of an nVidia GTX 970 or GTX
980? Maybe a AMD FX-6300 Vishera 6-Core 3.5 GHz? AMD FX-8300 Vishera
Does Intel vs AMD make any significant difference? When running Gromacs on
a system with GPU compute turned on, what sort of computing load does
Gromacs put on the CPU? Is there any commonly used CPU benchmark that can
be used to approximate relative Gromacs performance between CPUs?
How important is the system RAM speed? Should I spend more of my budget
building a DDR4 system(more expensive CPU, motherboard, and RAM modules),
or would that not make a significant difference over DDR3?
Would you happen to know what quantity of memory should be sufficient for
common Gromacs simulation runs, or runs such as the example I included
Finally, does the speed of the hard drive impact Gromacs performance? The
options are a cheap spinning-platter hard drive(100-200MB/s sequential
write), a low-cost SSD(400-500MB/s sequential write), or a high-speed PCI-E
SSD(1000-1500MB/s sequential write). Would writing out the data(.xtc,
.trr, .edr) to a slower hard drive(100-200MB/s sequential write speed)
cause the Gromacs simulation to slow down?
I don't see any reason that a cheap spinning platter hard drive would slow
Gromacs simulations down, but I want to make sure I'm not missing
Thank you for your time. I'd be very grateful for any information you can
give me, or direct me to.
More information about the gromacs.org_gmx-users