That Darn Compute:Texture Ratio

With its GT200 GPU, NVIDIA increased compute resources by nearly 90% but only increased texture processing by 25%, highlighting a continued trend in making GPUs even more powerful computationally. Here's another glance at the GT200's texture address and filter units:

Each TPC, of which there are 10, has eight address and eight filter units. Now let's look at RV770:

Four address and four filter units, while AMD maintains the same 1:1 address-to-filter ratio that NVIDIA does, the ratio of compute-to-texture in RV770 is significantly higher.

AMD RV770 AMD RV670 NVIDIA GT200 NVIDIA G92
# of SPs 160 64 240 128
Texture Address/Filter Units 40 / 40 16 / 16 80 / 80 64 / 64
Compute to Texture Ratio 4:1 4:1 3:1 2:1

The table above illustrates NVIDIA's trend of increasing the compute to texture ratio from 2:1 in G92 to 3:1 in GT200. AMD arguably overshot with RV670 and its 4:1 ratio and thus didn't need to adjust it with RV770. Even while staying still at 4:1 with RV770, AMD's ratio is still more aggressively geared towards compute than NVIDIA's is. That does mean that more texture bound games will do better on NVIDIA hardware (at least proportionally), while more compute intensive games may do better on RV770.

AMD did also make some enhancements to their texture units as well. By doing some "stuff" that they won't tell us about, they improved the performance per mm^2 by 70%. Texture cache bandwidth has also been doubled to 480 GB/s while bandwidth between each L1 cache and L2 memory is 384 GB/s. L2 caches are aligned with memory channels of which there are four interleaved channels (resulting in 8 L2 caches).

Now that texture units are linked to both specific SIMD cores and individual L1 texture caches, we have an increase in total texturing ability due to the increase in SIMD cores with RV770. This gives us a 2.5x increase in the number of 8-bit per component textures we can fetch and bilinearly filter per clock, but only a 1.25x increase in the number of fp16 textures (as fp16 runs at half rate and fp32 runs at one quarter rate). It was our understanding that fp16 textures could run at full speed on R600, so the 1.25x increase in performance for half rate texturing of fp16 data makes sense.

Even though fp32 runs at quarter rate, with the types of texture fetches we would need to do, AMD says that we could end up being external memory bandwidth bound before we are texture filtering hardware bound. If this is the case, then the design decision to decrease rates for higher bit-depth textures makes sense.

  AMD RV770 AMD RV670
L1 Texture Cache 10 x 16KB (160KB total) 32KB
L2 Texture Cache I can has cache size? 256KB
Vertex Cache ? 32KB
Local Data Share 16KB None
Global Data Share 16KB ?

 

Even though AMD wouldn't tell us L1 cache sizes, we had enough info left over from the R600 time frame to combine with some hints and extract the data. We have determined that RV770 has 10 distinct 16k caches. This is as opposed to the single shared 32k L1 cache on R600 and gives us a total of 160k of L1 cache. We know R600's L2 cache was 256k, and AMD told us RV770 has a larger L2 cache, but they wouldn't give us any hints to help out.

Building a RV770 Derek Gets Technical Again: Of Warps, Wavefronts and SPMD
Comments Locked

215 Comments

View All Comments

  • 0g1 - Wednesday, June 25, 2008 - link

    In the article it says the GT200 doesn't need to do ILP. It only has 10 threads. Each of those threads needs ILP for each of the SP's. The problem with AMD's approach is each SP has 5 units and is aimed directly at processing x,y,z,w matrix style operations. Doing purely scalar operations on AMD's SP's would be only using 1 out of the 5 units. So, if you want to get the most out of AMD's shaders, you should be doing vector calculations.
  • DerekWilson - Wednesday, June 25, 2008 - link

    The GT200 doesn't worry with ILP at all.

    a single thread doesn't run width wise across all execution units. instead different threads execute the exact same single scalar op on their own unique bit of data (there is only one program counter per SM for a context). this is all TLP (thread level parallelism) and not ILP.

    AMD's compiler can pack multiple scalar ops into a 5-wide VLIW operation.

    on purely scalar code with many independent ops in a long program, AMD can fill all their units and get close to peak performance. explicit vector instructions are not necessary.
  • gigahertz20 - Wednesday, June 25, 2008 - link

    http://www.hardwarecanucks.com/forum/hardware-canu...">http://www.hardwarecanucks.com/forum/ha...870-512m...



    The site above mounted an after market cooler on it and got awesome results. Either the Thermalright HR-03 GT is just that great of a GPU cooler, or the standard heatsink/fan on the 4870 is just that horrible. Going from 82C to 43C at load and 55C to 33C at idle, just from an after market cooler is crazy! I was hoping to see some overclocking scores after they mounted the Thermalright on it, but nope :(
  • Matt Campbell - Wednesday, June 25, 2008 - link

    The HR-03GT really is that great. Check it out: http://www.anandtech.com/casecoolingpsus/showdoc.a...">http://www.anandtech.com/casecoolingpsus/showdoc.a...

    Our 8800GT went from 81 deg. C to 38 deg. C at load, 52 to 32 at idle. That's also with the quietest fan on the market at low speed. And FWIW, I played through all of The Witcher (about 60 hours) with the 8800GT passively cooled in a case with only 1 120mm fan.

    -Matt
  • Clauzii - Wednesday, June 25, 2008 - link

    I see no fan on that thing??! PASSIVE?? :O ??
  • jeffreybt2 - Wednesday, June 25, 2008 - link

    "Please note that this is with a single Zalman 92MM fan operating at 1600RPM along with Arctic Cooling MX-2 applied to the base."
  • magnusr - Wednesday, June 25, 2008 - link

    Does the audio part of the card support PAP? If not all blu-ray audio will be downsampled to 16/48...
  • NullSubroutine - Wednesday, June 25, 2008 - link

    I would just like to point out that the 4870 falls behind the 3870 X2 in Oblivion while in every other game it runs circles around it. To me it appears to be a driver problem with Oblivion rather than an indication of the hardware not doing well there. Unless of course the answer lies in the ring bus of the R680?
  • orionmgomg - Wednesday, June 25, 2008 - link

    I would love to see more benchmarks with the CPU OCed to at least 4.0

    All the CPUs you use can hit it NP.

    Also, what about at least 2 GTX 280 Cards and their numbers. Noticed that you did have them in SLI cause the power comsumption comparisons had them, but you held back the performance numbers...

    Lets see the top 4 cards from ATI and Nvidia compete in dule GPU (no punt intended)on an X48 with DDR3 1600 and a FSB of 400x10!

    That would be really nice for the people hoe have performance systems, but may still be rocking out a pair of EVGA 8800Ultras, cause their waiting for real numbers and performance to come out - and their still paying off theye systems lol... :]
  • Ilmarin - Wednesday, June 25, 2008 - link

    You're probably aware of these already, but I'll mention them just in case:

    * Page 10 (AA comparison) is malformed with no images
    * Page 21 (Power, Heat and Noise) is missing the Heat and Noise stuff.

    Heat is a big issue with these 4800 cards and their reference coolers, so it would be good to see it covered in detail. My 7800 GTX used to artifact and cause crashes when it hit 79 degrees, before I replaced it with an aftermarket cooler. Apparently the 4870 hits well over 90 degrees at load, and the 4850 isn't much better. Decent aftermarket coolers (HR-03 GT, DuOrb) aren't cheap... and if that's what it takes to prevent heat problems on these cards, some people might consider buying a slower card (like a 9800 GTX+) just because it has better cooling.

    Anand, you guys should do a meltdown test... pit the 9800 GTX+ against the 4850, and the 4870 against the GTX 260, all with reference coolers, in a standard air-cooled system at a typical ambient temp. Forget timedemos/benchmarks... play an intensive game like Crysis for an hour or two, and see if you encounter glitches and crashes. If the 4800 cards can somehow remain artifact/crash free at those high temps, then I'd more seriously consider buying one. Heat damage over time may also be a concern, but is hard to test for.

    Sure, DAAMIT's partners will eventually put non-reference coolers on some cards, but history tells us that the majority of the market in the first few months will be stock-cooled cards, so this has got be of concern to consumers... especially early adopters.

Log in

Don't have an account? Sign up now