The 3D Pipeline
The 3D pipeline for the P10 brings 3Dlabs up to date with the rest of the industry, and has some room to grow in support of OGL 2.0 and DX9, showing the obligatory 4-pixel pipeline. However, 3Dlabs has stuffed a lot more processing power, and hence, more operations, into the pipe. The function of the additional arrays of parallel SIMD processors in the pipeline is two-fold. On the one hand, they offer developers a set of functions that they haven't had hitherto. On the other hand, they can be used to reduce the number of different passes made on a pixel by offering more operations to create the texture effects required. On a superficial level, the P10 architecture is packed for power and effects.
The 3D pipeline for the P10 shows the obligatory 4-pixel pipeline, but it packs more functions to massage those pixels. The P10 VPU boasts over 200 SIMD processors for all its geometry, texture and pixel processing stages.
With Longhorn, the expectation is that dozens of apps maybe fighting for resources on the CPU and graphics processor. Intel's addressing this issue with HyperThreading, and 3Dlabs is using its command buffer to handle multiple requests coming into the P10. The command buffer scans multiple command buffers and finds work to do. This is the idea of multi-threading that 3Dlabs believes is going to be putting pressure on the graphics processor in future versions of Windows. Here, we see where the P10s processing power might be best suited in the present architecture. Instead of just using the array of processors to increase the effects available, you can also scale up as the load on the VPU grows.
The command processor allocates resources to multiple requests coming into the graphics processor, as is expected to be the case with Longhorn.
With DX9, Microsoft is pretty much making it obligatory for graphics processors to support any window as a possible surface. Everything from the rendering of video to wide lines will have to be tessellated and rendered through DX9. Even images are to be represented as a texture, rather than as a bitmap.
Texture processing isn't going to be just about 3D graphics in Longhorn. It will apply to all aspects of window management, and even things like how paths and widened lines are displayed.
As a result of the expectations put on the texture processing engine, filtering and anti-aliasing demands on the graphics processor will also increase. In this case, 3Dlabs has its bases covered.
- Textures can be arbitrary sizes, which is a requirement for DX9.
- P10 claims it can do eight simultaneous textures compared to ATi's six, and Nvidia's four.
- Filtering is programmable beyond anistropic, bi-cubic and other hardwired texture formats. This is increasingly going to be important in future versions of Windows where the graphics hardware is going to have to support imaging applications that require higher order filtering and specialized support.
- 3Dlabs claims its virtual memory architecture can offer up to 16 GB of addressable texture storage.
- The PIO has a 256-bit DDR memory interface that has a bandwidth of 20 GB/s.