IntroductionThe advent of PCI Express has afforded component makers that use that interconnect a number of benefits over PCI, PCI-X and AGP. For example, disk controller vendors can engineer RAID controllers that aren't limited by the PCI or PCI-X bus for transfer rates to and from the host. For graphics chip vendors, the benefits are twofold. Firstly, with a full 16-lane PEG16X implementation of PCI Express, you get double the bus bandwidth to the graphics chip and around sixteen times the bandwidth transferring data from the GPU back to the host. Secondly, the PCI Express spec allows granular access to system memory from any device that uses it.
For a graphics chip vendor, that means fully read/write access to any part of free system memory in the same bitwise manner that the CPU can. The obvious use for such capability is the extension of on-board memory into system memory with granular accesses. That's what schemes like NVIDIA TurboCache and ATI HyperMemory seek to exploit, using system memory as storage that the GPU can use as if it were memory on the add-in board.
I covered TurboCache back in December, NVIDIA applying the technology to a low-end, fairly crippled GPU (NV44). Performance was much better than anything integrated and the feature set is pretty strong and with the best TurboCache SKUs fairly cheap worldwide. ATI have a range of HyperMemory SKUs available now, too. Encompassing the X300 and X600 product ranges, HyperMemory boards usually have either 32MiB of on-board memory (using BGA DRAMS) and augment 96MiB of system memory to create a 128MiB total memory size, or they have 128MiB on-board (TSOP pieces) and augment another 128MiB space in system memory to create a 256MiB product.
Memory bus sizes on the products are always 64-bit, so there's no fine-print reading to be done to make sure you're not buying an anaemic 32-bit local memory bus version, as can trip you up with the current TurboCache SKUs from NVIDIA.
So HyperMemory simply denotes a class of products that use the PCI Express interconnect to read and write from system memory as it was attached to the GPU itself on the board. For current HyperMemory products, that means a ~4800MB/sec local memory bandwidth (600MHz DDR local memory on a 64-bit path to the GPU) with something around 5000MB/sec of possible bandwidth from the average dual-channel memory controller you might find a PCI Express system sporting.
The X300 SE HyperMemory 128MiB product being reviewed today contains the aforementioned 32MiB of on-board memory with the rest taken from your system reserves. Powered by the RV370 GPU, I'll give you a quick overview of that chip's abilities and confirm the small details before we have a look at performance versus its main competitor. Onwards!