Besides adding superscalar dispatch abilities to GF104, NVIDIA has also made a number of other tweaks to the Fermi architecture for this GPU.

As a mid-range product, GF104 does not need to do 2 jobs at once. GF100 had to be usable as a desktop/professional graphics GPU, but also as a compute GPU for NVIDIA’s Tesla line of cards. GF104 will not be a Tesla product, so those compute abilities are not as critical. Specifically, NVIDIA has taken a chisel to Tesla’s flagship compute abilities of FP64 and ECC, which in GF100 desktop GPUs were artificially throttled and disabled respectively.

For GF104, ECC is completely gone. Barring the errant burst of solar radiation, the odds of a flipped bit or other error in the operation of a GPU is extremely slim. NVIDIA only added the feature for Tesla customers who demanded increased reliability as they could not accept a silent error in their work. For graphics however this is unnecessary, so the feature has been dropped.

Double-precision floating-point (FP64) on the other hand hasn’t been entirely dropped. Like ECC, FP64 is primarily a Tesla feature, but at the same time NVIDIA believes it to not be in their best interests to remove the feature. From NVIDIA’s perspective without FP64 on their consumer cards developers could not test and debug FP64 code on their desktops and laptops, which in turn would impede development for Tesla and hurt their efforts to expand in to the professional compute space. As a result GF104 has an interesting compromise on FP64.

For GF104, NVIDIA removed FP64 from only 2 of the 3 blocks of CUDA cores. As a result 1 block of 16 CUDA cores is FP64 capable, while the other 2 are not. This gives NVIDIA the advantage of being able to employ smaller CUDA cores for 32 of the 48 CUDA cores in each SM while not removing FP64 entirely. Because only 1 block of CUDA cores has FP64 capabilities and in turn executes FP64 instructions at 1/4 FP32 performance (handicapped from a native 1/2), GF104 will not be a FP64 monster. But the effective execution rate of 1/12th FP32 performance will be enough to effectively program in FP64 and debug as necessary.

Moving on, we have GF104’s texture units. GF100 was an interesting beast when it came to texturing, as it had texture units more efficient than GT200, but fewer of them overall. We don’t have any data that points to GF100 being absolutely deficient on texturing speeds, but at the same time it’s hard to imagine that GF100 was overbuilt to the point that losing 32 texture units wouldn’t hurt.

So for GF104, NVIDIA has doubled up on the number of texture units. A “full” GF104 has the same number of texture units at GF100 (64) in half as many SMs. NVIDIA tells us that this change is largely because texture units are small enough that they can be added without consuming too much additional die space, as opposed to requiring additional texture units such as a specific case of lacking texture performance or having too little texture performance relative to shading performance. But this isn’t something we can prove or disprove. High-detail settings optimized for high-end cards often go heavy on anti-aliasing or shading as opposed to textures, so ultimately we’re not surprised that NVIDIA kept the texture unit count constant while reducing the shader count in moving from GF100 to GF104. The shaders will be missed much less than the texture units would have been.

Finally, we have the ROPs. There haven’t been any significant changes here, but the ROP count does affect compute performance by impacting memory bandwidth and L2 cache. Even though NVIDIA keeps the same number of SMs on both the 1GB and 768MB of the GTX 460, the latter will have less L2 cache which may impact compute performance. Compute performance on the GTX 460 may also be impacted by pressure on the registers and L1 cache: NVIDIA increased the number of CUDA cores per SM, but not the size of the Register File or the amount of L1 cache/shared memory, so there are now additional CUDA cores fighting for the same resources. In the worst case scenarios, this can hurt the efficiency of GF104 compared to GF100.

For those of you who are curious, with all of these SM changes between GF100 and GF104 the size of a SM did increase, but by nearly as much as one would think: after adding the additional functional units, infusing the warp schedulers with superscalar dispatch capabilities, and removing unnecessary ECC and FP64 hardware, the size of an SM only increased by 25%. This is a tradeoff NVIDIA could not afford on the already massive GF100, but made sense on GF104 where the performance increase could justify the extra die space.

Post Your Comment

93 Comments

It was like that some day. But now I see more and more troubling signs. iPhone dissapearing from comparison photos ("oh, I've forgotten, it should have been in my pocket") when it has huge disadvantage, but always shown where it has advantage. (and happy readers crowd not "noticing" such "unimportant detail")

AMD's 5830, the 200$ card with the same "it's slower than older... but it has some features" got serious beating right in the title. (guess what, it was actually cooler than older cards, so it had one advantage more than that of nVidia). On the other hand nVidia's 200$ card that is EXACTLY in the same positoin, got PRAISED in the title.

I agree with Lonyo, they are simply pointing out the technical aspects of the silicon. It gives those that follow the latest and greatest developments in chip architecture some food for thought. It was never intended to mislead a customer, the performance numbers are enough evidence to give the customer a decent understanding of what to expect in the real world application of the chip in consideration. Reply

You're being a bit a of a fan-boy in my opinion. The article is very well balanced. Seriously, the 460 is the first good card from nVidia in a long time, and at a genuinely afordable price. ATI finally have some real competition on their hands. Up till now they have owned this generation. And the 5830 was always an odd fit for that market sector. Really, it was just an afterthought on how to repurpose 5870 rejects. It filled a hole, but now that hole doesn't exist anymore. It's the one ATI card from this generation that I really didn't like.Reply

Not all of us scour rumor sites and wait with bated breath for months for the next big thing to come out. For some of us, waiting a few months is no big deal. (especially with the lack of any "must-have" gaming titles. The heyday of PC gaming is long over.)

Since the launch-price 5850's (which didn't last long), the GTX 460 seems to be the first really good buy out there. The 5770 didn't outperform the 4870, the 5830 was an overpriced turd, the price-gouged 5850's and 5870's aren't good price/performance bargains, the GTX 470 and 480 are no better and are power hogs to boot.

THIS has me excited -- especially the SLI scaling. $400-$460 in cards that'll often beat a $700 5970? And they have low idle power consumption and decent load consumption (for the performance)? I mean in that price range is the 5870, GTX 480, and 4870 x2, and GTX 460 SLI beats them all. The 5870 has much lower load power consumption going for it but it's also significantly slower.Unless you're going to need the power of 5870 in CF, the GTX 460 seems to be the way to go.Reply