For starters: What is AGP?

There isn't a computer gamer out there that hasn't heard the term AGP, or Accelerated Graphics Port, used in a requirements listing on the back of the latest game they've been eyeing. But what is AGP? It isn't rare that our favorite three letter acronyms quickly become lost in their household connotations and we eventually forget what it is they are actually providing us with, if anything at all (the letters MMX come to mind). So what is AGP? (If you're already familiar with the basics of AGP you'll want to skip past this part)

AGP is, according to Intel, a "high performance, component level interconnect targeted at 3D graphical display applications and is based on a set of performance extensions or enhancements to PCI." Basically it is a specialized bus whose sole purpose is to provide "housing" for 2D/3D accelerators in your AGP compatible system.

When operating in its currently standard 2X transfer mode, the AGP bus allows for peak transfer rates of up to 528MB/s up from the 132MB/s of the PCI bus. Using the faster transfer rates the AGP bus allows your AGP compliant computer can store those extremely large textures that games may use in your system memory and retrieve them quickly instead of having to use your graphics card's limited local memory for texture storage and retrieval. What happens when a non-AGP graphics card receives a texture that is larger than its local memory? The same thing that happens when your system runs out of local memory, it begins swapping, but in this case, instead of swapping to your hard disk, your graphics card will perform texture swapping with your system memory which, with the absence of the high speed AGP bus, slows performance down tremendously. This concept of AGP texturing is made possible by the hardware behind it, which is commonly referred to by the acronym GART, or Graphics Address Remapping Table. The function of the GART is basically do allow for the hardware to access large texture maps as single data objects in system memory, permitting your AGP card and software using the AGP bus to access the same memory addresses.

The second major feature of AGP which will briefly be alluded to will be the ability of AGP compliant graphics adapters to manipulate the textures it stores in the system memory directly as opposed to retrieving them and processing all the manipulations locally. This process, known as Direct Memory Execution, or DIME, allows memory intensive texture-mapping procedures to be performed within the spacious system memory rather than in the restrictive graphics card's local memory.

AGP a Reality?

If you can think back to the release of Intel's first AGP chipset, the i440LX, one of the most commonly voiced criticisms of the move to AGP graphics accelerators was that no games would take advantage of AGP or AGP texturing for that matter. Although the design was wonderful in theory, in application it boasted a relatively small performance improvement in the real world tests of the time. Even today, playing a game of Quake 2 doesn't really stress the amount of memory on most current generation 3D accelerators. It is because of this assumption, that the current wave and the next generation in 3D games won't truly require support for AGP texturing (the ability to use the AGP bus as a means of transferring textures to/from system memory) that companies like 3Dfx have stuck to either 100% PCI solutions (i.e. Voodoo2) or poorly implemented AGP specifications (i.e. Banshee/Voodoo3) that don't allow for AGP texturing in light of keeping costs down. Is that how things truly are?

Here's a reality check, they aren't. It's very easy to understand, more detailed textures simply look better and, unfortunately, more detailed textures do take up more space than those of lesser detail. This brings up the whole image quality vs performance debate, however that's something that we won't get in to for now, instead we'll leave the discussion at this comparison: regardless of how beautiful a sunset is, if you're blind to a point where all you can distinguish is general color changes, the sunset has virtually no effect on you. That may be an extreme example, but it's a quick end to an argument that could take pages upon pages to even come close to resolving. After playing a game that has extremely detailed textures on a single 12MB Voodoo2 at 800 x 600, then playing the same game at 800 x 600 on an AGP nVidia Riva TNT based graphics card, you can truly begin to notice the difference. While older games such as Quake 2 undoubtedly run beautifully on a single Voodoo2 and run like a dream on a dual Voodoo2 SLI setup, there comes a point where even 24MB of memory (SLI Voodoo2's) isn't enough to cover the demands of the upcoming games. Remember when you heard all of the industry analysts talking about how AGP would eventually be put to good use in the gaming industry? That time is almost upon us, and it's time for companies to realize that AGP texturing and taking full advantage of the specification's capabilities is something all of their video products should do. The technology is there, and it's about time that we start using it. Luckily companies like nVidia, Matrox, and S3 have already taken the first steps in that direction…but it seems as if there is more that could be done…

Index Step 2: S3TC

Log in

Don't have an account? Sign up now