pixel pipeline vs. pixel shaders

m1ldslide1

Platinum Member
Feb 20, 2006
2,321
0
0
So how come video cards traditionally had pixel pipelines as a tech spec, and now it's all pixel shaders? Are they the same thing? Seems like no, since I think the x1900xt series description on newegg always said Pixel Pipelines: 16(48 pixel shaders), but the nvidia parts had no mention of it.

Can somebody explain this? Seems like I missed the memo.
 

Munky

Diamond Member
Feb 5, 2005
9,372
0
76
A pixel pipeline is a term used to describe how many pixels a video card can output per clock cycle. In addition, modern video cards have programmable shader units which allow the developer to process pixels however they choose, more than just texturing and a few canned effects that were possible on video cards without shaders. These shaders are widely used in modern games, and usually require multiple clock cycles per pixel. The more shaders a card has, the more pixels it can process in this manner. The performance in modern games is largely determined by how many pixels the card can process, and not so much by how many processed pixels it can just texture or spit out to the screen. The x1900xt has 16 texture units, and can output 16 pixels per clock, but it can run a shader program on 48 pixels per clock.
 

VIAN

Diamond Member
Aug 22, 2003
6,575
1
0
A pipeline is like an assembly line. Ex. A car assembly line. The frame of a car moves down the line and people keep adding the pieces until it eventually becomes a car.

A pixel pipeline is a pipeline that outputs one pixel. A pixel pipeline working at a frequency such as 1MHz can output one million pixels per second. GPU designers would design a GPU with more than one pixel pipeline because it was more feasible than making just one pixel pipeline at an insane frequency.

Pixel shaders are functions that can modify a pixel. Pixel shaders are used extensively in today's games: in water, bump mapping, and other graphical effects.

Previously, when pixel shaders were starting to become more common in games, the definition of performance in a GPU changed. It went from Texels/sec to Pixels/sec. The reason is that for every clock cycle of a pixel pipeline a pixel shader operation can be accomplished. Although, I'm not saying that most shader operations are processed in one cycle.

This worked fine until designers started to realize that when they perform a pixel shader operation, other important functions of the pixel pipeline aren't being used. They viewed this as wasting power, hence the invention of Pixel Shader Execution Units. I don't know if that's the real name, but basically all they do is calculate pixel shader operations, freeing up the pixel pipelines.

Since pixel shader performance is the main GPU bottleneck in good framerates in today's games, hardware Pixel shader units are now the definition of performance of a GPU.