Advanced Graphics Port
Banner
 Search Cool Links

  

Computer Reviews
Animated Tutorials
Windows Help and Tips
PC Support

One requirement for the "Super 7 Platform" is the inclusion of the accelerated graphics port but is this an upgrade that you want to make?  Or, might you want to wait?  We'll try to give you a brief overview of this new technology to better prepare you for this decision...

Introduction

     AGP is based on PCI, but is designed especially for the throughput demands of 3-D graphics. Rather than using the PCI bus for graphics data, AGP creates a dedicated point-to-point channel by which the graphics controller can directly access main memory. This AGP channel is 32 bits wide and runs at 66 MHz. This translates into a total bandwidth of 266 MBps, as opposed to the PCI bandwidth of 133 MBps. AGP also supports two optional faster modes, with throughputs of 533 MBps and 1.07 GBps.

AGP vs. PCI

Is there really that much difference between PCI and AGP? If so, is the difference great enough that I should invest in a new graphics card now? Well, in order to make that determination we should look at the first question. As you can see above, AGP offers a greater data transfer rate advantage when it comes to moving the geometry stream from the processor to the graphics card. When handling large texture databases, it's GART table allows the operating system to manage textures in off screen memory as well as in system memory, and allows the graphics card direct access in either location.

Before AGP came along, game developers had three options for managing textures:

  1. Limit the texture database to only that which would fit in off-screen memory. Although this delivers outstanding frame rates, memory size constraints limit the developers artistic creativity. This means, with some of the older graphics cards out there, texture space could be reduced to as little as one megabyte.

  2. Use the operating system to manage textures in main memory, and make the processor copy textures from main memory to graphics memory as needed. This process can create a major bottleneck even with relatively small textures.

  3. Or, place the most frequently used textures in off screen memory (like the first method above), and then reserve additional space in system memory for the remainder of the texture database. In this case, if the graphics chip needs a texture that is not in graphics memory the accelerator must use PCI master mode (DMA) to transfer the needed texture into texture swapping space in the graphics memory. This seems to have been the preferred method for most game developers as it and can be programmed under Direct X Immediate Mode and results in acceptable performance.


Basically AGP is a hardware-modified approach to this last method. Memory management is a little more flexible, and because of its faster clock speed and bus pipelining, the data transfer rate is increased.

AGP deals with textures in two different ways. One, called "DMA Mode", which operates similarly to the last method above, but the transfers occur over the AGP bus rather than PCI. The other is called Execute Mode.
The other called "Execute Mode". allows the graphics chip to access texture information in main memory without first copying it to local graphics memory. In effect, bus throughput of both of these modes is the same.

The folks at Intel are hyping Execute Mode primarily because it only runs on AGP and, as we all know, they want users with existing systems to upgrade their PCI Pentium systems in favor of more costly Pentium II AGP systems. However, in the real world, game developers and users should prefer DMA mode because it offers outstanding performance and compatible with current PCI accelerators.

AGP's DMA mode provides excellent concurrency because the software can determine which texture to swap before the texture is actually needed, while the processor is still calculating the geometry. The graphics card can then begin fetching the texture before it is needed to paint pixels on the screen.

In AGP Execute mode, the raster engine determines texture accesses at the final stage of the 3D pipeline. At this point, the accelerator is useless without immediate access to textures. In this way, AGP creates a nasty performance bottleneck. Instead of having immediate access to textures in high bandwidth local memory, the accelerator goes into Wait State while it reconciles access to slower system memory across the AGP bus fracturing concurrency.

On the other side of the performance equation is the CPU. When AGP texturing is turned on, the graphics card takes control of the main system memory bus in order to access texture data. When this happens, the CPU access to main memory is blocked. If the load on the CPU is not great, this isn't a problem. But if the CPU is engaged in a high demand task (such as a game) it is likely to encounter roadblocks in its attempt to access main memory. While not currently a problem this could however affect future implementation of larger game programs that use extremely large texture maps. The best solution to this problem is having a larger local graphics memory configuration. More memory on the card itself negates the necessity of accessing textures from main memory.

In conclusion, while AGP does have a lot going for it, anyone who cares about 3D performance is advised to make your upgrade by choosing a high performance graphics card with a generous memory configuration - or at least the option to add a memory upgrade later. Some cards based on the Intel 1740 chip for example only have 2MB of onboard memory. Here at MediaTek we think that purchasing one of these cards may lead to a backward glance in the near future. We encourage you to read as many graphics card reviews as you can before making that purchase. The more you learn now the happier you will be as this platform progresses.

last updated 8/4/98


Cool Links
Peripherals News
PC Support
Linux Tips
About Computing
1998/1999/2000
MediaTek All Rights Reserved