Blog AMD trotted out its latest entry in the GPU wars yesterday: the FireStream 9350 and 9370 accelerator boards.
The flagship 9370 is a dual-slot PCIe card that beats NVIDIA’s Fermi handily on single-precision FP (2.64 TFlops vs. 1.03 TFlops for Fermi), but bests Fermi by a much narrower margin on dual-precision with a score of 528 to 515 gigaflops.
One of the points that emerges from these articles is the difference in how the two companies have approached packaging their GPUs for HPC consumption. With Fermi, NVIDIA added ECC memory support, which is a hugely important factor for customers who want to avoid having random memory errors crash their apps and force job restarts. AMD still doesn’t have ECC support, although it does say that it's on the way.
NVIDIA also has support for C++ and other more CPU-like stuff that should make it easier from a programming standpoint. AMD’s new Firestream products stay faithful to the existing GPU architecture, which makes it a bit less friendly to CPU programmers but maxes out the number of GPU cores. Despite these differences, both chips will crank out numbers much faster than their CPU cousins.
AMD is definitely at a disadvantage with its lack of ECC, but most other technical measures are on par. I think AMD’s success in the HPC GPU market will depend a lot on how well the OpenCL ecosystems develop vs. NVIDIA’s CUDA environment. CUDA has several years’ lead over OpenGL – in HPC at least – and judging from what we’re hearing from vendors, most have embraced CUDA (and thus NVIDIA) as their first-choice accelerator platform.
It’s not an insurmountable lead, but CUDA is definitely ahead when it comes to HPC adoption. While AMD is OpenGL-committed, NVIDIA can play with OpenGL as well – but would certainly prefer CUDA to prevail, as that path leads to an all-NVIDIA GPU world. And who wouldn’t want to dominate at least one little part of the world? ®