GeForce FX GPU and CineFX Architecture

GeForce FX is the first GPU from NVIDIA to comply with Microsoft DirectX 9 specifications. NVIDIA called the launch of GeForce FX – “the dawn of cinematic computing”, and the NV30 architecture – CineFX. The company implies that GeForce FX provides the PC users the opportunity to enjoy those special effects we usually see in movies in real time. Let’s find out what is hidden behind the CineFX name that allows NVIDIA such bold statements.
NV30 architecture differs from the “classical” graphics chips architecture, so a number of items in the GeForce FX specifications list require our detailed comments. Below are the main characteristics of GeForce FX (NV30) compared with those of NVIDIA GeForce4 Ti4800 (NV28) and ATI RADEON 9700 PRO (R300):
NVIDIA GeForce4 Ti 4800 | ATI RADEON 9700 PRO | NVIDIA GeForce FX | |
Manufacturing technology | 0.15micron | 0.15micron | 0.13micron |
Number of transistors | 67mln | 110mln | 125mln |
Chip frequency | 300MHz | 325MHz | 500MHz |
Graphics memory controller | 128bit | 256bit | 128bit |
Graphics memory frequency | 650MHz | 620MHz | 1000MHz |
Peak memory bus bandwidth | 9.9GB/s | 18.9GB/s | 15.2GB/s |
Max graphics memory size | 128MB | 256MB | 256MB |
AGP interface | AGP 3.0 4x/8x | AGP 3.0 4x/8x | AGP 3.0 4x/8x |
Pixel pipelines, pixel shaders | |||
Pixel pipelines | 4 | 8 | 8 [1] |
Texturing unites per pipeline | 2 | 1 | 1 [1] |
Max number of textures during multi-texturing | 4 | 8 | 8 |
Texture filtering types | bi-linear | bi-linear | bi-linear |
Max anisotropy level | 8 | 16 | 8 |
Pixel shaders version | v.1.3 | v.2.0 | v.2.0+ |
Branching, subroutines and loops | none | none | none |
Max number of textures per shader | 4 | 16 | 16 |
Max number of texture instructions | 4 | 32 | 1024 |
Max number of arithmetic instructions | 8 | 64 (+64) [2] | 1024 |
Max number of instructions per shader | 12 | 96 (+64) [2] | 1024 [2] |
Registers | 2 color registers, | 2 color registers, 4 resulting color registers, | 2 color registers, 4 resulting color registers, |
Data representation formats | Fixed point | Fixed point, | Fixed point, |
Vertex pipelines, vertex shaders | |||
Vertex pipelines | 2 | 4 | 3 |
Vertex shaders version | v.1.1 | v.2.0 | v.2.0+ |
Branching, subroutines and loops | none | static | Dynamic |
Max number of instructions per shader | 128 | 256 | 256 |
Max number of instructions with loops extension | 128 | 65536 | 65536 |
Registers | 16 input registers, 8 output registers for texture coordinates, | 16 input registers, 8 output registers for texture coordinates, | 16 input registers, 8 output registers for texture coordinates, |
Data representation formats | 32bit floating-point | 32bit floating-point | 32bit floating-point |
Full-screen anti-aliasing | |||
FSAA methods | Supersampling, | Rotated grid multi-sampling | Supersampling, |
Number of samples | 2 (OGSS, OGMS), | 2, 4, 6 | 2 (OGSS, OGMS), |
Technologies helping to use the graphics memory bandwidth more efficiently | |||
Hidden Surfaces Removal (HSR) | yes | yes | Yes |
Frame-buffer compression | none | yes | Yes |
Z-buffer compression | yes | yes | yes |



