Next Gen 3D Is On! 3Dlabs' P10 VPU

Managing Memory

3Dlabs also claims that the P10 distinguishes itself from competitors like the GeForce4 and Radeon 8500 in two areas of memory management. First, the chip interfaces via a 256-bit interface to DDR memory, as opposed to the existing 128-bits. This gives the P10 a memory bandwidth of 20 GB/s. However, frame buffer storage is still limited to 256 MB, so 3Dlabs offers a virtual memory management architecture.

3Dlabs claims that developers find managing memory to be the most challenging aspect of the 3D graphics pipeline. The company believes its virtual memory architecture gives the P10 an advantage in this regard.

Moving textures in and out of physical memory architectures is one of the bottlenecks for developers using existing graphics processors. The application has to load a texture into memory, check the memory to see where the texture is, if it needs a new texture, it has to flush the memory, and load the new texture, and so on.

3Dlabs claims that the P10 will have a logical address range of 16 GB split between whatever is onboard memory (limit is still 256 MB), and system memory. So, in theory, using a P10, a developer can load GBytes of textures into memory, not have to worry about where they are physically, and just call them directly as needed, reducing some of the overhead of existing architectures.

It's certainly a feature that is going to be essential in the workstation environment where some applications, such as visualization and simulations, use large data sets and require a great deal of memory for storage. For example, terrain generators for a flight simulator will require memory to load very large texture maps. How feasible it will be to expect game developers to do the same for a P10 is debatable.

Game developers will want to support the largest number of graphics cards, and will design their applications to adapt to using cards that will probably have 128 MB frame buffers onboard, and no virtual memory management. They may also not like the idea of relinquishing their textures to host memory, choosing to keep them local and under the control of their own engines.

However, down the line, as Longhorn appears, graphics cards are going to face a memory wall. If you have a number of high resolution windows open on your desktop, and each is double buffered, z-buffered, and alpha blended, you will pretty much use up 256 MB of frame buffer storage after a few Windows. Maybe not realistically, but very possibly. So, it'll be interesting to see how the need for ever bigger buffers get addressed in the future.