Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

GPU Pixel and Texel write speed

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?

like image 486
zoli2k Avatar asked Mar 05 '13 12:03

zoli2k


People also ask

What is GPU pixel rate?

Pixel rate refers to the number of pixels that a GPU can render onto a screen every second. Digital images are made up of pixels.

What is Texel vs pixel?

When a pixel belongs to an image used as a texture resource, it is called a 'texture pixel' or shortened to 'texel'. Instead of mapping directly to screen pixels, a texel's data is mapped to a location in the coordinate space of the 3D object being modeled.

How is GPU pixel rate calculated?

Pixel fillrates are given in megapixels per second or in gigapixels per second (in the case of newer cards), and are obtained by multiplying the number of render output units (ROPs) by the clock frequency of the graphics processing unit (GPU) of a video card.

What is GPU fill rate?

Fill rate refers to the number of pixels that a video card can render or write to memory every second. It is measured in megapixels or gigapixels per second, which is obtained by multiplying the clock frequency of the graphics processing unit (GPU) by the number of raster operations (ROPs).


2 Answers

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.

  • Read the whole article - Fill Rate Explained
  • Additional details can be found here - Texture Fill Rate

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.

like image 195
Renat Gilmanov Avatar answered Oct 14 '22 12:10

Renat Gilmanov


The performance registers/counters Pixel Write Speed and Texel Write speed maintain stats / count operations about pixel and texel processed/written. I will explain the peak (maximum possible) fill rates.

Pixel Rate

A picture element is a physical point in a raster image, smallest element of display device screen.

Pixel rate is the maximum amount of pixels the GPU could possibly write to the local memory in one second, measured in millions of pixels per second. The actual pixel output rate also depends on quite a few other factors, most notably the memory bandwidth - the lower the memory bandwidth is, the lower the ability to get to the maximum fill rate.

The pixel rate is calculated by multiplying the number of ROPs (Raster Operations Pipelines - aka Render Output Units) by the the core clock speed.

Render Output Units : The pixel pipelines take pixel and texel information and process it, via specific matrix and vector operations, into a final pixel or depth value. The ROPs perform the transactions between the relevant buffers in the local memory.

Importance : Higher the pixel rate, higher is the screen resolution of the GPU.

Texel Rate

A texture element is the fundamental unit of texture space (a tile of 3D object surface).

Texel rate is the maximum number of texture map elements (texels) that can be processed per second. It is measured in millions of texels in one second

This is calculated by multiplying the total number of texture units by the core speed of the chip.

Texture Mapping Units : Textures need to be addressed and filtered. This job is done by TMUs that work in conjunction with pixel and vertex shader units. It is the TMU's job to apply texture operations to pixels.

Importance : Higher the texel rate, faster the game renders displays demanding games fluently.

Example : Not a nVidia fan but here are specs for GTX 680, (could not find much for embedded GPU)

Model   Geforce GTX 680
Memory  2048 MB
Core Speed  1006 MHz
Shader Speed    1006 MHz 
Memory Speed    1502 MHz (6008 MHz effective)
Unified Shaders 1536 
Texture Mapping Units   128 
Render Output Units 32 
Bandwidth   192256 MB/sec 
Texel Rate  128768 Mtexels/sec 
Pixel Rate  32192 Mpixels/sec
like image 39
user568109 Avatar answered Oct 14 '22 12:10

user568109