Zotac GeForce GT 640 DDR3 Review: Glacial Gaming & Heavenly HTPCby Ryan Smith & Ganesh T S on June 20, 2012 12:00 PM EST
Compute and Synthetics
Moving on from our look at gaming performance, we have our customary look at compute performance. Kepler’s compute performance has been hit and miss as we’ve seen on GK104 cards, so it will be interesting to see how GK107 fares.
Our first compute benchmark comes from Civilization V, which uses DirectCompute to decompress textures on the fly. Civ V includes a sub-benchmark that exclusively tests the speed of their texture decompression algorithm by repeatedly decompressing the textures required for one of the game’s leader scenes. Note that this is a DX11 DirectCompute benchmark.
Because this is a compute benchmark the massive increase in ROPs coming from GT 440 to GT 640 doesn’t help the GT 640, which means the GT 640 is relying on the smaller increase in shader performance. The end result is that the GT 640 neither greatly improves on the GT 440 nor is it competitive with the 7750. Compared to the GT 440 compute shader performance only improved by 28%, and the 7750 is some 50% faster here. I suspect memory bandwidth is still a factor here, so we’ll have to see what GDDR5 cards are like.
Our next benchmark is SmallLuxGPU, the GPU ray tracing branch of the open source LuxRender renderer. We’re now using a development build from the version 2.0 branch, and we’ve moved on to a more complex scene that hopefully will provide a greater challenge to our GPUs.
NVIDIA’s poor OpenCL performance under Kepler doesn’t do them any favors here. Even the GT 240 – a DX10.1 card that doesn’t have the compute enhancements of Fermi – manages to beat the GT 640 here. And the GT 440 is only a few percent behind the GT 640.
For our next benchmark we’re looking at AESEncryptDecrypt, an OpenCL AES encryption routine that AES encrypts/decrypts an 8K x 8K pixel square image file. The results of this benchmark are the average time to encrypt the image over a number of iterations of the AES cypher.
The GT 640 is at the very bottom of the chart. NVIDIA’s downplaying of OpenCL performance is a deliberate decision, but it’s also a decision with consequences.
Our fourth benchmark is once again looking at compute shader performance, this time through the Fluid simulation sample in the DirectX SDK. This program simulates the motion and interactions of a 16k particle fluid using a compute shader, with a choice of several different algorithms. In this case we’re using an (O)n^2 nearest neighbor method that is optimized by using shared memory to cache data.
All indications are that our fluid simulation benchmark is light on memory bandwidth usage and heavy on cache usage, which makes this a particularly exciting benchmark. Our results back this theory, as for the first and only time the GT 640 shoots past the GTS 450 and coms close to tying the GTX 550Ti. The 7750 still handily wins here, but based on the specs of GK107 I believe this is the benchmark most representative of what GK107 is capable of when it’s not facing such a massive memory bandwidth bottleneck. It will be interesting to see what GDDR5 GK107 cards do here, if only to further validate our assumptions about this benchmark’s memory bandwidth needs.
Our final benchmark is a look at CUDA performance, based on a special benchmarkable version of the CUDA Folding@Home client that NVIDIA and the Folding@Home group have sent over. Folding@Home and similar initiatives are still one of the most popular consumer compute workloads, so it’s something NVIDIA wants their GPUs to do well at.
Folding@Home has historically pushed both shader performance and memory bandwidth, so it’s not particularly surprising that the GT 640 splits the difference. It’s faster than the GT 440 by 32%, but the GTS 450 still has a 25% lead in spite of the fact that the GT 640 has the greater theoretical compute performance. This is another test that will be interesting to revisit once GDDR5 cards hit the market.
Jumping over to synthetic benchmarks quickly, it doesn’t look like we’ll be able to tease much more out of GK107 at this time. GT 640 looks relatively good under 3DMark in both Pixel Fill and Texel fill, but as we’ve seen real-world performance doesn’t match that. Given that the GT 640 does this well with DDR3 however, it’s another sign that a GDDR5 card may be able to significantly improve on the DDR3 GT 640.
Tessellation performance is also really poor here, however there’s no evidence that this is a memory bandwidth issue. The culprit appears to be the scalability of NVIDIA’s tessellation design – it scales down just as well as it scales up, leaving cards with low numbers of SMXes with relatively low tessellation performance. NVIDIA’s improvements to their Polymorph Engines do shine through here as evidences by the GT 640’s performance improvement relative to the GT 440, but it’s not a complete substitute to just having more Polymorph Engines.