I have run the molecular dynamics (MD) code GROMACS on a Ubuntu Linux cluster consisting of nodes containing 24 Intel Xeon CPUs. My particular point of interest turns out to be somewhat sensitive to floating point arithmetic precision, so I have had to run GROMACS in double precision rather than single precision -- despite double precision's higher computational cost. So on the cluster, I have compiled GROMACS in double precision.
I am considering purchasing some GPUs, since there may be a speed-up relative ("GPU acceleration") to CPUs. However, I need a GPU that will allow me to do double precision arithmetic. Do you know if such hardware is commercially available? A recent post on the GROMACS mailing list suggests that double precision GPUs are not commercially available:
The hardware does not support it [double precision arithmetic] yet AFAIK.
This Wikipedia page seems to suggest that double precision GPUs are uncommon since they may be inefficient:
The implementations of floating point on Nvidia GPUs are mostly IEEE compliant; however, this is not true across all vendors. This has implications for correctness which are considered important to some scientific applications. While 64-bit floating point values (double precision float) are commonly available on CPUs, these are not universally supported on GPUs; some GPU architectures sacrifice IEEE compliance while others lack double-precision altogether. There have been efforts to emulate double-precision floating point values on GPUs; however, the speed tradeoff negates any benefit to offloading the computation onto the GPU in the first place.
This NVIDIA Tesla page, in referencing "Peak double precision floating point performance" in the chart, seems to suggest that double precision calculations can, in fact, be done on their GPUs (albeit at higher computational cost).
So, what should I believe? Do you have any experience with this issue?