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

  • Final Destination II - Wednesday, June 25, 2008 - link

    http://www.techpowerup.com/reviews/Powercolor/HD_4...">http://www.techpowerup.com/reviews/Powercolor/HD_4...

    Look! Compare the Powercolor vs. the MSI.
    Somehow MSI seems to have done a better job with 4dB less.
  • Final Destination II - Wednesday, June 25, 2008 - link

    Try ASUS, 7°C cooler.
  • Justin Case - Wednesday, June 25, 2008 - link

    I thought it was only Johan, and it was sort of understandable since he's not a native English speaker, but it seems most Anandtech writers don't know the difference between "its" and "it's".

    "It's" means "it is" or "it has" (just as "he's" or "she's"). When you're talking about something that belongs to something else, you use "its" (or "his" / "her").

    In a sentence such as "RV770 in all it's [sic] glory.", you're clearly not saying "in all it is glory" or "in all it has glory"; you sare saying "in all the glory that belongs to it". So you should use "its", not "it's".

    Even if you can't understand the difference (which seems pretty straightforward, but for some reason confuses some people), modern grammar checkers will pick this up 9 times out of 10.
  • CyberHawk - Thursday, June 26, 2008 - link

    I am not a native English speaker, but I am well aware of the difference. I am also sure that reviewers are also ... it's just that - with all this text, we can forgive them, can't we?

    I have a bachelor of computer science, studying for higher degree, but: I look at the technical side of the article, so I don't even notice the errors :D (although I can tell the difference I simply don't see it while reading)
  • CyberHawk - Thursday, June 26, 2008 - link

    Oh, I forgot: maybe I'm just being too enthusiastic ;)
  • JarredWalton - Wednesday, June 25, 2008 - link

    More likely is that with a 10000 word article and four lengthy GPU reviews in two weeks, errors slipped into the text. I know at one point I noticed Derek says "their" instead of "there" as well, and I can assure you that he knows the difference. I know I use Word's grammar checker, but I'm not sure Derek even uses Word sometimes. :)
  • araczynski - Wednesday, June 25, 2008 - link

    of the 4850's, slickdeals has posted a sale, between rebate and coupon off...$150 each. can't beat that bang/$ by anything from nvidia.

    first ati cards that will ever be in my computers since i've started with the voodoo/riva tnt :)
  • Denithor - Wednesday, June 25, 2008 - link

    Page 15: first reference to "GTX 280" should be "GTX 260" instead.

    Page 19: I think you meant "type" not "time" in this paragraph.
  • natty1 - Wednesday, June 25, 2008 - link

    This review is flawed. It shows greater than 100% scaling for Crossfire 4870 in Call of Duty 4. Why don't they just give us the raw numbers for both single and dual cards in the same scenario? Why use a method that will artificially inflate the Crossfire results?
  • Denithor - Wednesday, June 25, 2008 - link

    If you read the comments before yours, you'd see the answer.

    Experimental error and/or improved scaling for each card versus a single card. Read the earlier comment for more details.

Log in

Don't have an account? Sign up now