GPU Pixel and Texel write speed

zoli2k picture zoli2k · Mar 5, 2013 · Viewed 20k times · Source

Many of the embedded/mobile GPUs are providing access to performance registers called Pixel Write Speed and Texel Write speed. Could you explain how those terms can be interpreted and defined from the actual GPU hardware point of view?

Answer

Renat Gilmanov picture Renat Gilmanov · Mar 14, 2013

I would assume the difference between pixel and texel is pretty clear for you. Anyway, just to make this answer a little bit more "universal":

  • A pixel is the fundamental unit of screen space.
  • A texel, or texture element (also texture pixel) is the fundamental unit of texture space.

Textures are represented by arrays of texels, just as pictures are represented by arrays of pixels. When texturing a 3D surface (a process known as texture mapping) the renderer maps texels to appropriate pixels in the output picture.

enter image description here

BTW, it is more common to use fill rate instead of write speed and you can easily find all required information, since this terminology is quite old and widely-used.

Answering your question

All fill-rate numbers (whatever definition is used) are expressed in Mpixels/sec or Mtexels/sec.

Well the original idea behind fill-rate was the number of finished pixels written to the frame buffer. This fits with the definition of Theoretical Peak fill-rate. So in the good old days it made sense to express that number in Mpixels.

However with the second generation of 3D accelerators a new feature was added. This feature allows you to render to an off screen surface and to use that as a texture in the next frame. So the values written to the buffer are not necessarily on screen pixels anymore, they might be texels of a texture. This process allows several cool special effects, imagine rendering a room, now you store this picture of a room as a texture. Now you don't show this picture of the room but you use the picture as a texture for a mirror or even a reflection map.

Another reason to use MTexels is that games are starting to use several layers of multi-texture effects, this means that a on-screen pixel is constructed from various sub-pixels that end up being blended together to form the final pixel. So it makes more sense to express the fill-rate in terms of these sub-results, and you could refer to them as texels.

Update

Texture Fill Rate = (# of TMU - texture mapping unit) x (Core Clock)

The number of textured pixels the card can render to the screen every second.

It is obvious that the card with more TMUs will be faster at processing texture information.