RSX 'Reality Synthesizer'

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
The RSX 'Reality Synthesizer' on a PlayStation 3 motherboard

The RSX 'Reality Synthesizer' is a proprietary graphics processing unit (GPU) co-developed by Nvidia and Sony for the PlayStation 3 video game console. The chip is based on the Nvidia G70, features 256 MB memory. Although it carries the majority of the graphics processing, the Cell Broadband Engine, the console's CPU, is also used complementarily for some graphics-related computational loads of the console.

Specifications

Length of chip at bottom: 4.28 cm

Unless otherwise noted, the following specifications are based on a press release by Sony at the E3 2005 conference,[1] slides from the same conference,[2] and slides from a Sony presentation at the 2006 Game Developer's Conference.[3]

  • Based on G70 Chip in turn based on the NV47 (GeForce 7800 GTX) but with only 8 ROPs activated and 128 Bit memory interface
  • 500 MHz on 90 nm process (shrunk to 65 nm in 2008[4] and to 40 nm in 2010[5])
  • 300+ million transistors
  • Multi-way programmable parallel floating-point shader pipelines
  • Independent pixel/vertex shader architecture
    • 24 parallel pixel-shader ALU pipes clocked @ 550 MHz
    • 8 parallel vertex-shader pipelines @550 MHz
      • 2 ALU operations per pipeline, per cycle (1 vector4 and 1 scalar, dual issue)[citation needed]
      • 27 floating-point operations per pipeline, per cycle[7]
    • Floating Point Operations: 400.4GFLOPS [8]
      • 74.8 billion shader operations per second (24 Pixel Shader Pipelines*5 ALUs*550 MHz) + (8 Vertex Shader Pipelines*2 ALUs*550 MHz)
    • 24 texture filtering units (TF) and 8 vertex texture addressing units (TA)
      • 24 filtered samples per clock
        • Maximum texel fillrate: 13.2 GigaTexels per second (24 textures * 550 MHz)
    • 32 unfiltered texture samples per clock, ( 8 TA x 4 texture samples )
  • 8 render output units / pixel rendering pipelines
    • Peak pixel fillrate (theoretical): 4.4 Gigapixel per second
    • Maximum Z sample rate: 8.8 GigaSamples per second (2 Z-samples * 8 ROPs * 550 MHz)
    • Maximum Dot product operations: 56 billion per second (combined with Cell CPU)
    • 128-bit pixel precision offers rendering of scenes with High dynamic range rendering (HDR)
  • 256 MB GDDR3 RAM at 700 MHz
    • 128-bit memory bus width
      • 22.4 GB/s read and write bandwidth
    • Cell FlexIO bus interface
      • 20 GB/s read to the Cell and XDR memory
      • 15 GB/s write to the Cell and XDR memory
  • Support for PSGL (OpenGL ES 1.1 + Nvidia Cg)
  • Support for S3TC texture compression [9]

Differences with the G70 architecture

The RSX 'Reality Synthesizer' is based on the G70 architecture, but features a few changes to the core.[10] The biggest difference between the two chips is the way the memory bandwidth works. The G70 only supports rendering to local memory, while the RSX is able to render to both system and local memory. Since rendering from system memory has a much higher latency compared to rendering from local memory, the chip's architecture had to be modified to avoid a performance sacrifice. This was achieved by enlarging the chip size to accommodate larger buffers and caches in order to keep the graphics pipeline full. The result was that the RSX only has 60% of the local memory bandwidth of the G70, making it necessary for developers to use the system memory in order to achieve performance targets.[10]

Press releases

Sony staff were quoted in PlayStation Magazine saying that the "RSX shares a lot of inner workings with NVIDIA 7800 which is based on G70 architecture."[citation needed] Since the G70 is capable of carrying out 136 shader operations per clock cycle, the RSX was expected to feature the same number of parallel pixel and vertex shader pipelines as the G70, which contains 24 pixel and 8 vertex pipelines.

Nvidia CEO Jen-Hsun Huang stated during Sony's pre-show press conference at E3 2005 that the RSX is twice as powerful as the GeForce 6800 Ultra.[2]

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. 2.0 2.1 Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. 10.0 10.1 Lua error in package.lua at line 80: module 'strict' not found.