GeForce vs. Tesla Performance

*Dear developers and users *

*We are going to assemble a GPU-based system. We have ended into two
choices, buying a Geforce GTX 1080 Ti or Tesla K40 VGA. The final price of
the system with the former GPU is cheaper and certainly, suffices
moderate-sized systems (up to 50K particles). However, it supports
single-precision calculations. The system with the Tesla GPU is more
expensive but also supports double-precision calculations which is crucial
for simulation dealing with fast particles movement such as protein folding
or crack initiation. *
*We mainly focus on studying diffusive systems including organic molecules
moving through an aqueous solution. Overall, I'd like to know what's the
proper precision for our purpose, single or double? Would anybody explain
the reasoning behind?*

*Lastly, we've heard of a malfunction coming with GeForce GPUs. They are
said not *double-checking* the numeric results and as a result, there may
be some erratic change of atoms coordinates. Is it true? Has anybody ever
faced such case? If yes, what shall I decide on purchasing GeForce or
Tesla?*

*Any hint is welcome.*

*Bests*

If you use the kokkos package then you can definitely perform double precision calculations with a GTX 1080 Ti. It will run about half as fast as is possible in single precision but that still might be worth the significantly lower price.

Alternatively, the GPU package can be compiled in mixed precision which should roughly get you the best of both worlds. I don’t think it is vital to have the computation of the instantaneous forces on each particle in double precision as long as you accumulate them into a double, although I have no real data to back that up. Axel probably has more insight on this.

I happen to have a GTX 1080 Ti in my desktop and can run some benchmarks for you if you’re interested.
Perhaps the biggest issue with the 1080 Ti will be that tech support will probably not be of great help when it comes to replacing a 1080 Ti that died due to number crunching.

Dear developers and users

We are going to assemble a GPU-based system. We have ended into two choices, buying a Geforce GTX 1080 Ti or Tesla K40 VGA. The final price of the system with the former GPU is cheaper and certainly, suffices moderate-sized systems (up to 50K particles). However, it supports single-precision calculations. The system with the Tesla GPU is more expensive but also supports double-precision calculations which is crucial for simulation dealing with fast particles movement such as protein folding or crack initiation.

We mainly focus on studying diffusive systems including organic molecules moving through an aqueous solution. Overall, I’d like to know what’s the proper precision for our purpose, single or double? Would anybody explain the reasoning behind?

​you are doing things the wrong way. if you don’t understand already when you can use single or mixed precision, you should not seek to purchase a GPU based system. you can explore this beforehand, and you don’t need a high performing GPU to explore accuracy. BTW, also consumer grade GPUs can do double precision, they are just much slower at it.
furthermore, you are comparing hardware from different generations. the kepler generation GPU hardware is 3 generations away from the current hardware generation. the geforce 1080 only 1. as of recent, nvidia has become quite aggressive in removing support for legacy hardware, and the latest “victim” is the fermi generation hardware, the generation before kepler.​ https://en.wikipedia.org/wiki/CUDA#GPUs_supported.

Lastly, we’ve heard of a malfunction coming with GeForce GPUs. They are said not double-checking the numeric results and as a result, there may be some erratic change of atoms coordinates. Is it true? Has anybody ever faced such case? If yes, what shall I decide on purchasing GeForce or Tesla?

​that was reported for a specific hardware, namely the GeForce Titan V. which is based on the Volta microarchitecture (and very expensive).

at the moment, it is difficult to make a good recommendation as nvidia is cranking up the prices for tesla hardware in a range somewhere between insane and ridiculous, while at the same time, they are crippling consumer grade hardware through hardware and software (and as of recent even software licensing) restrictions.

cases where GPUs make the most sense are:

  • you want to build a single extra potent workstation. then probably the best performance can be had by using Tesla P100 GPUs.
  • you have an application where you can use single/mixed precision (i.e. number of atoms not too large; only fixed volume, no NPT) and get very good acceleration
  • you have sufficient power and cooling, but not enough space
  • you have a large budget and can afford a mixed setup with mostly CPU hardware and some GPUs.

keep in mind, that machines with GPUs are way more “temperamental” that CPU-only hardware, and thus require more attention from admins. also the software/driver cycles are shorter and not always as smooth as for CPUs and compilers.

axel.