3
\$\begingroup\$

I saw a review of the GeForce GTX 460 graphics card. It has 56 texture units. I'm not that knowledgeable about graphics effects. But, the ones I know use around 3 or 4 texture units. In this graphics card case, that would leave a lot of texture units idle. How are these graphics cards with so many texture units used?

\$\endgroup\$

4 Answers 4

12
\$\begingroup\$

GPUs generally process a number of pixels in parallel these days, so I expect that it can make good use of all these units even with simple shaders.

\$\endgroup\$
6
\$\begingroup\$

56 texture units means that approximately 56 texture filtering operations can occur in parallel in a single clock (throughput) (some operations take longer than others - aniso footprint size, texel size, etc.). The hardware will utilize this automatically since it processes many pixels in parallel. The number of texure slots used per shader does not affect this.

@FuzzySpoon: That isn't the case. Even a single cube will be 56x times faster than a hypothetical 1x texture card, since it is parallelized at the pixel (actually pixel texture request) level. This assumes of course that the bottleneck is texture filtering in both cases.

\$\endgroup\$
3
  • \$\begingroup\$ I think fuzzyspoon was saying that 56 cubes on this card would render at the same speed as 1 cube on a 1 texture unit card, which would be true. \$\endgroup\$
    – Deleter
    Aug 16, 2010 at 18:09
  • \$\begingroup\$ yep, its 56 pixels at once, we are saying the same/similar things. \$\endgroup\$ Aug 16, 2010 at 19:28
  • 1
    \$\begingroup\$ Yes, we do have the same thing in mind then. AFter bluescrn's "per-pixel" comment, it sounded as though you were being contrary and implying that 56 cubes were actually required to see the speed up. Sorry for the confusion. \$\endgroup\$
    – Crowley9
    Aug 17, 2010 at 16:33
2
\$\begingroup\$

Remember that bandwidth limitations and the texture cache also come into play. Use as few samplers as you can, then ask if you can use one less.

\$\endgroup\$
2
  • \$\begingroup\$ Heh optimisation master, a texture unit nazi as well?? \$\endgroup\$ Aug 16, 2010 at 19:28
  • \$\begingroup\$ First rule of optimization: don't. ;) \$\endgroup\$
    – ZeroStride
    Aug 16, 2010 at 20:54
1
\$\begingroup\$

Aas stated it can handle 56 textures in parallel. That means 56 different textured cubes takes the same amount as of time to process as 1 cube, on a single texture unit card.

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .