KFA2 GeForce GTX 960 EXOC review

Graphics cards 1054 Page 5 of 27 Published by

teaser

Maxwell Graphics Architecture

Maxwell Graphics Architecture

Let's again put most of the data in a chart to get an idea and better overview of changes:

GeForce GTX 780 GTX 780 Ti GTX Titan Black GTX 960 GTX 970 GTX 980
Fabrication node 28nm 28nm 28nm 28nm 28nm 28nm
Shader processors 2304 2880 2880 1024 1664 2048
Streaming Multiprocessors (SMX) 12 15 15 8 13 16
Texture Units 192 240 240 64 104 128
ROP units 48 48 48 32 56 64
GPU Clock (Core/Boost) 863/900 875/928 889/980 1127/1178 1050/1178 1126/1216
Memory Clock / Data rate 1502/6008 1750/7000 1750/7000 1750/7000 1750/7000 1750/7000
Graphics memory 3072 3072 6144 2048 4096 4096
Memory interface 384-bit 384-bit 384-bit 128-bit 256-bit 256-bit
Memory bandwidth 288 GB/s 336 GB/s 336 GB/s 112 Gb/s 224 GB/s 224 GB/s
Power connectors 1x6-pin PEG, 1x8-pin PEG 1x6-pin PEG, 1x8-pin PEG 1x6-pin PEG, 1x8-pin PEG 1x 8-pin 2x6-pin PEG 2x6-pin PEG
Max board power (TDP) 250 Watts 250 Watts 250 Watts 120 Watts 145 Watts 165Watts
Recommended Power supply 600 Watts 600 Watts 600 Watts 450 Watts 500 Watts 500 Watts
GPU Thermal Threshold 95 degrees C 95 degrees C 95 degrees C 95 degrees C 95 degrees C 95 degrees C

So we talked about the core clocks, specifications and memory partitions. However, to be able to better understand a graphics processor you simply need to break it down into small pieces. Let's first look at the raw data that most of you can understand and grasp. This bit will be about the Maxwell GM204 architecture. NVIDIA’s “Maxwell” GPU architecture implements a number of architectural enhancements designed to extract even more performance and more power efficiency per watt consumed.
 

Gm206


So above, we see the GM206 block diagram that entails the Maxwell architecture, Nvidia started developing the GPU around 2011/2014 actually. Each of the two GPCs has eight SMX/SMM (streaming multi-processor) clusters in total. You'll spot the two 64-bit memory interfaces, bringing in a 128-bit path to the graphics memory at 7 Gbps, default the cards can reach 112 GB/sec.

Let's break it down into bits and pieces. The GM206 will have:

  • 1024 (GTX 960) CUDA/Shader/Stream processors are used
  • There are 128 CUDA cores (shader processors) per cluster
  • 2.94 Billion Transistors
  • 64 Texture units
  • 32 ROP units
  • 128-bit GDDR5 @ 112 GB/s
  • Texture Filtering Rate (Bilinear) 72.1 GigaTexels/sec
An important thing to focus on is the SM (block of shader processors) clusters (SMX), which have 128 shader processors. Let's zoom in even further.
 
Geforce_gtx_980_sm_diagram_final
One SMX: 128 single‐precision shader cores, double‐precision units, special function units (SFU), and load/store units.
 

So based on a full 8 SMM 1024 shader core chip the SMX looks fairly familiar in design. In the pipeline we run into the ROP (Raster Operation) engine and the GM206 has a nice 32 engines for features like pixel blending and AA. The GPU has 64KB of L1 cache for each SMX plus a special 48KB texture unit memory that can be utilized as a read-only cache. The GPU’s texture units are a valuable resource for compute programs with a need to sample or filter image data. The texture throughput is significantly decreased compared to Fermi – each SMX unit contains 8 texture filtering units.
  • GeForce GTX 960 has 8 SMX x 8 Texture units = 64
  • GeForce GTX 970 has 13 SMX x 8 Texture units = 104
  • GeForce GTX 980 has 16 SMX x 8 Texture units = 128

So there's a total of up-to 8 SMX x8 TU = 64 texture filtering units available for the silicon itself (once all SMXes are enabled). Typically lower is worse, but these cards however require little voltage and can be clocked very high. And that's where performance kicks in at low power consumption. To reduce DRAM bandwidth demands, NVIDIA GPUs make use of lossless compression techniques as data is written out to memory. The bandwidth savings from this compression are realized a second time when clients such as the Texture Unit later read the data. As illustrated in the preceding figure, the compression engine has multiple layers of compression algorithms.

Any block going out to memory will first be examined to see if 4x2 pixel regions within the block are constant, in which case the data will be compressed 8:1 (i.e., from 256B to 32B of data, for 32b color). If that fails, but 2x2 pixel regions are constant, they will compress the data 4:1. These modes are effective for AA surfaces, but less so for 1xAA rendering. Therefore, starting in Fermi Nvidia also implemented support for a “delta color compression” mode. In this mode, they calculate the difference between each pixel in the block and its neighbour, and then try to pack these different values together using the minimum number of bits. For example if pixel A’s red value is 253 (8 bits) and pixel B’s red value is 250 (also 8 bits), the difference is 3, which can be represented in only 2 bits. If the block cannot be compressed in any of these modes, then the GPU will write out data uncompressed, preserving the lossless rendering requirement.

The effectiveness of delta color compression depends on the specifics of which pixel ordering is chosen for the delta color calculation. Maxwell contains the third generation of delta color compression, which improves effectiveness by offering more choices of delta calculation to the compressor. Thanks to the improvements in caching and compression in Maxwell, the GPU is able to significantly reduce the number of bytes that have to be fetched from memory per frame. Maxwell uses roughly 25% fewer bytes per frame compared to Kepler.

Share this content
Twitter Facebook Reddit WhatsApp Email Print