Tag Archives: AGP

AGPCLK / CPUCLK from The Tech ARP BIOS Guide!

AGPCLK / CPUCLK

Common Options : 1/1, 2/3, 1/2, 2/5

 

AGPCLK / CPUCLK Quick Review

The AGPCLK / CPUCLK BIOS feature allows you to set the ratio between the AGP clock speed and the CPU bus (also know as front side bus or FSB) clock speed.

This allows you to keep the AGP bus speed within specifications (66 MHz) while using a much faster CPU bus speed.

When the ratio is set to 1/1, the AGP bus will run at the same speed as the CPU bus. This is meant for processors that use the 66 MHz bus speed, like the older Intel Celeron processors.

The 2/3 divider is used when you use a processor running with a bus speed of 100 MHz. This divider will cut the AGP bus speed down to 66 MHz.

The 2/5 divider is used when you use a processor running with a bus speed of 166 MHz. This divider will cut the AGP bus speed down to 66 MHz.

Generally, you should set this feature according to the CPU bus speed you are using.

This means using the 1/1 divider for 66 MHz bus speed CPUs, the 2/3 divider for 100 MHz bus speed CPUs, the 1/2 divider for 133 MHz CPUs and the 2/5 divider for 166 MHz CPUs.

 

AGPCLK / CPUCLK Details

The AGP bus clock speed is referenced from the CPU bus clock speed. However, the AGP bus was only designed to run at 66 MHz while the CPU bus runs anywhere from 66 MHz to 133 MHz.

Therefore, a suitable AGP bus to CPU bus clock speed ratio or divider must be selected to ensure that the AGP bus won’t run way beyond 66 MHz. This is where the AGPCLK / CPUCLK BIOS option comes in.

When the ratio is set to 1/1, the AGP bus will run at the same speed as the CPU bus. This is meant for processors that use the 66 MHz bus speed, like the older Intel Celeron processors.

The 2/3 divider is used when you use a processor running with a bus speed of 100 MHz. This divider will cut the AGP bus speed down to 66 MHz.

The 1/2 divider was introduced with motherboards that provide 133 MHz bus speed support. Such motherboards need the 1/2 divider to make the AGP bus run at the standard 66 MHz. Without this divider, the AGP bus would have to run at 89 MHz, which is more than what most AGP cards can withstand.

The 2/5 divider was introduced with motherboards that provide 166 MHz bus speed support. Such motherboards need the 2/5 divider to make the AGP bus run at the standard 66 MHz. Without this divider, the AGP bus would have to run at 83 MHz, which is more than what most AGP cards can withstand.

Generally, you should set this feature according to the CPU bus speed you are using. This means using the 1/1 divider for 66 MHz bus speed CPUs, the 2/3 divider for 100 MHz bus speed CPUs, the 1/2 divider for 133 MHz CPUs and the 2/5 divider for 166 MHz CPUs.

If you are overclocking the CPU bus, you are supposed to reduce the divider to ensure that the AGP bus speed remains within specifications. However, most AGP cards can run with the AGP bus overclocked to 75 MHz. Some would even happily run at 83 MHz! However, anything above 83 MHz would be a little iffy.

In most cases, you can still stick with the original AGP bus / CPU bus clock divider when you overclock the CPU. This means that the AGP bus will be overclocked as well. But as long as the AGP card can work at the higher clock speed, it shouldn’t be a problem. In fact, you can expect a linear increase in AGP bus performance.

Be warned though – overclocking the AGP bus can potentially damage your AGP card. So, be circumspect when you overclock the AGP bus. 75 MHz is normally the safe limit for most AGP cards.

 

Recommended Reading

Go Back To > Tech ARP BIOS GuideComputer | Home

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participating in the Tech ARP Forums, or even donating to our fund. Any help you can render is greatly appreciated!


AGP Capability from The Tech ARP BIOS Guide

AGP Capability

Common Options : Auto, 1X Mode, 2X Mode, 4X Mode, 8X Mode

 

Quick Review of AGP Capability

The AGP Capability BIOS feature is only found in AGP 8X-capable motherboards. AGP 8X is backward-compatible with earlier AGP standards.

This BIOS feature allows you to set the motherboard’s maximum supported AGP transfer protocol.

It is recommended that you leave this BIOS feature at its default setting of Auto. This allows the motherboard to set the appropriate AGP transfer protocol based on the graphics card’s AGP support detected during the booting up process.

However, the other options are useful if your graphics card has problems using the detected AGP transfer protocol. You can then manually select a slower AGP transfer protocol to solve the problem.

 

Details of AGP Capability

The AGP Capability BIOS feature is only found in AGP 8X-capable motherboards. AGP 8X is backward-compatible with earlier AGP standards.

This BIOS feature allows you to set the motherboard’s maximum supported AGP transfer protocol.

When this BIOS feature is set to Auto, the motherboard will automatically select the appropriate AGP transfer protocol after detecting the capabilities of the AGP graphics card.

When this BIOS feature is set to 1X Mode, the motherboard will force the AGP bus to use the AGP 1X transfer protocol. AGP 1X allows a maximum transfer rate of 266MB/s.

When this BIOS feature is set to 2X Mode, the motherboard will force the AGP bus to use the AGP 2X transfer protocol. AGP 2X allows a maximum transfer rate of 533MB/s.

When this BIOS feature is set to 4X Mode, the motherboard will force the AGP bus to use the AGP 4X transfer protocol. AGP 4X allows a maximum transfer rate of 1GB/s.

When this BIOS feature is set to 8X Mode, the motherboard will force the AGP bus to use the AGP 8X transfer protocol. AGP 8X allows a maximum transfer rate of 2.1GB/s.

It is recommended that you leave this BIOS feature at its default setting of Auto. This allows the motherboard to set the appropriate AGP transfer protocol based on the graphics card’s AGP support detected during the booting up process.

However, the other options are useful if your graphics card has problems using the detected AGP transfer protocol. You can then manually select a slower AGP transfer protocol to solve the problem.

Please note that manually setting the AGP Capabilities BIOS feature to 8X Mode will not enable AGP 8X transfers if your graphics card supports only AGP 4X. The AGP bus will make use of the fastest AGP transfer protocol supported by both motherboard and graphics card.

 

Recommended Reading

[adrotate group=”2″]

Go Back To > The Tech ARP BIOS Guide | Home

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participating in the Tech ARP Forums, or even donating to our fund. Any help you can render is greatly appreciated!


Graphic Win Size from The Tech ARP BIOS Guide

Graphic Win Size

Common Options : 4, 8, 16, 32, 64, 128, 256

 

Quick Review of Graphic Win Size

The Graphic Win Size BIOS feature does two things. It selects the size of the AGP aperture (hence, the name Graphic Windows Size) and it determines the size of the GART (Graphics Address Relocation Table).

The aperture is a portion of the PCI memory address range that is dedicated for use as AGP memory address space while the GART is a translation table that translates AGP memory addresses into actual memory addresses which are often fragmented. The GART allows the graphics card to see the memory region available to it as a contiguous piece of memory range.

Host cycles that hit the aperture range are forwarded to the AGP bus without need for translation. The aperture size also determines the maximum amount of system memory that can be allocated to the AGP graphics card for texture storage.

Please note that the AGP aperture is merely address space, not actual physical memory in use. Although it is very common to hear people recommending that the AGP aperture size should be half the size of system memory, that is wrong!

The requirement for AGP memory space shrinks as the graphics card’s local memory increases in size. This is because the graphics card will have more local memory to dedicate to texture storage. So, if you upgrade to a graphics card with more memory, you shouldn’t be “deceived” into thinking that you will need even more AGP memory! On the contrary, a smaller AGP memory space will be required.

It is recommended that you keep the Graphic Win Size (or AGP aperture) around 64 MB to 128 MB in size, even if your graphics card has a lot of onboard memory. This allows flexibility in the event that you actually need extra memory for texture storage. It will also keep the GART (Graphics Address Relocation Table) within a reasonable size.

 

Details of Graphic Win Size

The Graphic Win Size BIOS feature does two things. It selects the size of the AGP aperture (hence, the name Graphic Windows Size) and it determines the size of the GART (Graphics Address Relocation Table).

The aperture is a portion of the PCI memory address range that is dedicated for use as AGP memory address space while the GART is a translation table that translates AGP memory addresses into actual memory addresses which are often fragmented. The GART allows the graphics card to see the memory region available to it as a contiguous piece of memory range.

Host cycles that hit the aperture address range are forwarded to the AGP bus without need for translation. The aperture size also determines the maximum amount of system memory that can be allocated to the AGP graphics card for texture storage.

The Graphic Win Size or AGP aperture size is calculated using this formula :

AGP Aperture Size = (Maximum usable AGP memory size x 2) + 12 MB

As you can see, the actual available AGP memory space is less than half the AGP aperture size set in the BIOS. This is because the AGP controller needs a write combined memory area equal in size to the actual AGP memory area (uncached) plus an additional 12 MB for virtual addressing.

Therefore, it isn’t simply a matter of determining how much AGP memory space you need. You also need to calculate the final aperture size by doubling the amount of AGP memory space desired and adding 12 MB to the total.

Please note that the AGP aperture is merely address space, not actual physical memory in use. It doesn’t lock up any of your system memory. The physical memory is allocated and released as needed whenever Direct3D makes a “create non-local surface” call.

Microsoft Windows 95 (with VGARTD.VXD) and later versions of Microsoft Windows use a waterfall method of memory allocation. Surfaces are first created in the graphics card’s local memory. When that memory is full, surface creation spills over into AGP memory and then system memory. So, memory usage is automatically optimized for each application. AGP and system memory are not used unless absolutely necessary.

Unfortunately, it is very common to hear people recommending that the AGP aperture size should be half the size of system memory. However, this is wrong for the same reason why swapfile size should not be fixed at 1/4 of system memory. Like the swapfile, the requirement for AGP memory space shrinks as the graphics card’s local memory increases in size. This is because the graphics card will have more local memory to use for texture storage!

This reduces the need for AGP memory. Therefore, when you upgrade to a graphics card with more memory, you shouldn’t be “deceived” into thinking that you will need even more AGP memory! On the contrary, a smaller AGP memory space will be required.

[adrotate group=”1″]

If your graphics card has very little graphics memory (4 MB – 16 MB), you may need to create a large AGP aperture, up to half the size of the system memory. The graphics card’s local memory and the AGP aperture size combined should be roughly around 64 MB. Please note that the size of the aperture does not correspond to performance! Increasing it to gargantuan proportions will not improve performance.

Still, it is recommended that you keep the AGP aperture size around 64 MB to 128 MB. Now, why should we use such a large aperture size when most graphics cards come with large amounts of local memory? Shouldn’t we set it to the absolute minimum to save system memory?

  1. First of all, setting it to a lower memory won’t save you memory! Don’t forget that all the AGP aperture size does is limit the amount of system memory the AGP bus can appropriate whenever it needs more memory. It is not used unless absolutely necessary. So, setting the AGP aperture size to 64 MB doesn’t mean that 64 MB of your system memory will be appropriated and reserved for the AGP bus’ use. What it does it limit the AGP bus to a maximum of 64 MB of system memory when the need arises.
  2. Next, most graphics cards require an AGP aperture of at least 16 MB in size to work properly. Many new graphics cards require even more. This is probably because the virtual addressing space is already 12 MB in size! So, setting the AGP Aperture Size to 4 MB or 8 MB is a big no-no.
  3. We should also remember that many software have AGP aperture size and texture storage requirements that are mostly unspecified. Some applications will not work with AGP apertures that are too small. And some games use so much textures that a large AGP aperture is needed even with graphics cards with large memory buffers.
  4. Finally, you should remember that the actual available AGP memory space is less than half the size of the AGP aperture size you set. If you want just 15 MB of AGP memory for texture storage, the AGP aperture has to be at least 42 MB in size! Therefore, it makes sense to set a large AGP aperture size in order to cater for all eventualities.

Now, while increasing the AGP aperture size beyond 128 MB won’t take up system memory, it would still be best to keep the aperture size in the 64 MB-128 MB range so that the GART (Graphics Address Relocation Table) won’t become too big. The larger the GART gets, the longer it takes to scan through the GART and find the translated address for each AGP memory address request.

With local memory on graphics cards increasing to incredible sizes and texture compression commonplace, there’s really not much need for the AGP aperture size to grow beyond 64 MB. Therefore, it is recommended that you set the AGP Aperture Size to 64 MB or at most, 128 MB.

Go Back To > The Tech ARP BIOS Guide | Home

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participating in the Tech ARP Forums, or even donating to our fund. Any help you can render is greatly appreciated!


AGP Secondary Lat Timer from The Tech ARP BIOS Guide

AGP Secondary Lat Timer

Common Options : 00h, 20h, 40h, 60h, 80h, C0h, FFh

 

Quick Review of AGP Secondary Lat Timer

The AGP Secondary Lat Timer BIOS feature controls how long the AGP bus can hold the PCI bus (via the PCI-to-PCI bridge) before another PCI device takes over. The longer the latency, the longer the AGP bus can retain control of the PCI bus before handing it over to another PCI device.

Normally, the AGP Secondary Latency Timer is set to 20h (32 clock cycles). This means the AGP bus’ PCI-to-PCI bridge has to complete its transactions within 32 clock cycles or hand it over to the next PCI device.

For better AGP performance, a longer latency should be used. Try increasing it to 40h (64 cycles) or even 80h (128 cycles). The optimal value for every system is different. You should benchmark your AGP card’s performance after each change to determine the optimal latency for your system.

[adrotate group=”2″]

If you set the AGP Secondary Latency Timer to a very large value like 80h (128 cycles) or C0h (192 cycles), it is recommended that you set the PCI Latency Time to 32 cycles. This provides better access for your PCI devices that might be unnecessarily stalled if both the AGP and PCI buses have very long latencies.

In addition, some time-critical PCI devices may not agree with a long AGP latency. Such devices require priority access to the PCI bus which may not be possible if the PCI bus is held up by the AGP bus for a long period. In such cases, it is recommended that you keep to the default latency of 20h (32 clock cycles).

 

Details of AGP Secondary Lat Timer

A bridge is a device that connects a primary bus with one or more logical secondary buses. The AGP bus is, therefore, a secondary bus connected to the PCI bus via a PCI-to-PCI bridge.

This BIOS feature is similar to the PCI Latency Timer BIOS feature. The only difference is this latency timer applies to the AGP bus, which is a secondary bus connected to the PCI bus via a PCI-to-PCI bridge. However, it is unknown why they named this BIOS feature AGP Secondary Lat Timer, instead of the more appropriate AGP Latency Timer or even PCI Secondary Latency Timer. The name is both misleading and inaccurate since the AGP bus does not have a secondary latency timer!

The AGP Secondary Lat Timer BIOS feature controls how long the AGP bus can hold the PCI bus (via the PCI-to-PCI bridge) before another PCI device takes over. The longer the latency, the longer the AGP bus can retain control of the PCI bus before handing it over to another PCI device.

Because a bridge device introduces additional delay to every transaction, a short latency would further reduce the amount of time the AGP bus has access to the PCI bus. A longer latency will allow the AGP bus more time to transact on the PCI bus. This speeds up AGP-to-PCI transactions.

Options (Hex)

Actual Latency

00h

0

20h

32

40h

64

60h

96

80h

128

C0h

192

FFh

255

The available options range are usually stated in terms of hexadecimal numbers. Here is a translation of those numbers into actual latencies :

Normally, the AGP Secondary Latency Timer is set to 20h (32 clock cycles). This means the AGP bus’ PCI-to-PCI bridge has to complete its transactions within 32 clock cycles or hand it over to the next PCI device.

For better AGP performance, a longer latency should be used. Try increasing it to 40h (64 cycles) or even 80h (128 cycles). The optimal value for every system is different. You should benchmark your AGP card’s performance after each change to determine the optimal latency for your system.

Please note that a longer latency isn’t necessarily better. A long latency can reduce performance as the other PCI devices queuing up may be stalled for too long. This is especially true with systems with many PCI devices or PCI devices that continuously write short bursts of data to the PCI bus. Such systems would work better with shorter latencies as they allow quicker access to the PCI bus.

Therefore, if you set the AGP Secondary Latency Timer to a very large value like 80h (128 cycles) or C0h (192 cycles), it is recommended that you set the PCI Latency Time to 32 cycles. This provides better access for your PCI devices that might be unnecessarily stalled if both the AGP and PCI buses have very long latencies.

In addition, some time-critical PCI devices may not agree with a long AGP latency. Such devices require priority access to the PCI bus which may not be possible if the PCI bus is held up by the AGP bus for a long period. In such cases, it is recommended that you keep to the default latency of 20h (32 clock cycles).

Go Back To > The Tech ARP BIOS Guide | Home

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participating in the Tech ARP Forums, or even donating to our fund. Any help you can render is greatly appreciated!


PIRQ x Use IRQ No. from The Tech ARP BIOS Guide

PIRQ x Use IRQ No.

Common Options : Auto, 3, 4, 5, 7, 9, 10, 11, 12, 14, 15

 

Quick Review of PIRQ x Use IRQ No.

The PIRQ x Use IRQ No. BIOS feature allows you to manually set the IRQ for a particular device installed on the AGP and PCI buses.

It is especially useful when you are transferring a hard disk from one computer to another; and you don’t want to reinstall your operating system to redetect the IRQ settings. By setting the IRQs to fit the original settings, you can circumvent a lot of configuration problems after installing the hard disk in a new system. However, this is only true for non-ACPI systems.

Below is a table showing the relationship between PIRQ and INT in the reference motherboard :-

Signals

AGP Slot
PCI Slot 1

PCI Slot 2

PCI Slot 3

PCI Slot 4
PCI Slot 5

PIRQ_0

INT A

INT D

INT C

INT B

PIRQ_1

INT B

INT A

INT D

INT C

PIRQ_2

INT C

INT B

INT A

INT D

PIRQ_3

INT D

INT C

INT B

INT A

You will notice that the interrupts are staggered so that conflicts do not happen easily.

Even then, you should try not use up paired slots that share the same set of IRQs. In such cases, it is recommended that you use only one of the two slots.

In most cases, you should just leave the setting as Auto. This allows the motherboard to assign the IRQs automatically. But if you need to assign a particular IRQ to a device on the AGP or PCI bus, here is how you can make use of this BIOS feature.

  1. Determine the slot that the device is located in.
  2. Check your motherboard’s PIRQ table (in the manual) to determine the slot’s primary PIRQ.
  3. You can then select the IRQ you want by assigning the IRQ to the appropriate PIRQ.

Just remember that the BIOS will always try to allocate the PIRQ linked to INT A for each slot. It is just a matter of linking the IRQ you want to the correct PIRQ for that slot.

Please note the table, notes and INT details are only examples provided by the reference motherboard. They may vary from motherboard to motherboard.

 

Details of PIRQ x Use IRQ No.

The PIRQ x Use IRQ No. BIOS feature allows you to manually set the IRQ for a particular device installed on the AGP and PCI buses.

It is especially useful when you are transferring a hard disk from one computer to another; and you don’t want to reinstall your operating system to redetect the IRQ settings. By setting the IRQs to fit the original settings, you can circumvent a lot of configuration problems after installing the hard disk in a new system. However, this is only true for non-ACPI systems.

Here are some important notes from the reference motherboard (may vary from motherboard to motherboard) :

  • If you specify a particular IRQ here, you can’t specify the same IRQ for the ISA bus. If you do, you will cause a hardware conflict.
  • Each PCI slot is capable of activating up to 4 interrupts – INT A, INT B, INT C and INT D.
  • The AGP slot is capable of activating up to 2 interrupts – INT A and INT B.
  • Normally, each slot is allocated INT A. The other interrupts are reserves and used only when the PCI/AGP device requires more than one IRQ or if the IRQ requested has been used up.
  • The AGP slot and PCI slot #1 share the same IRQ.
  • PCI slot #4 and #5 share the same IRQs.
  • USB uses PIRQ_4.

Below is a table showing the relationship between PIRQ and INT in the reference motherboard :-

Signals

AGP Slot
PCI Slot 1

PCI Slot 2

PCI Slot 3

PCI Slot 4
PCI Slot 5

PIRQ_0

INT A

INT D

INT C

INT B

PIRQ_1

INT B

INT A

INT D

INT C

PIRQ_2

INT C

INT B

INT A

INT D

PIRQ_3

INT D

INT C

INT B

INT A

You will notice that the interrupts are staggered so that conflicts do not happen easily. The INT A entries are in bold to highlight the staggered arrangement.

Even then, you should try not use up paired slots that share the same set of IRQs. In this reference motherboard, such paired slots would be the AGP slot and PCI slot 1 or PCI slots 4 and 5. In such cases, it is recommended that you use only one of the two slots.

In most cases, you should just leave the setting as Auto. This allows the motherboard to assign the IRQs automatically. But if you need to assign a particular IRQ to a device on the AGP or PCI bus, here is how you can make use of this BIOS feature.

  1. Determine the slot that the device is located in.
  2. Check your motherboard’s PIRQ table (in the manual) to determine the slot’s primary PIRQ. For example, if you have a PCI network card in PCI slot 3, the table above shows that the slot’s primary PIRQ is PIRQ_2. Remember, all slots are first allocated INT A if it is available.
  3. You can then select the IRQ you want by assigning the IRQ to the appropriate PIRQ. In our network card example, if the card requires IRQ 7, set PIRQ_2 to use IRQ 7. The BIOS will then allocate IRQ 7 to PCI slot 3. It is that easy! 🙂
[adrotate group=”2″]

Just remember that the BIOS will always try to allocate the PIRQ linked to INT A for each slot. So, in our reference motherboard, the primary PIRQ for the AGP slot and PCI slot 1 is PIRQ_0 while the primary PIRQ for PCI slot 2 is PIRQ_1 and so on. It is just a matter of linking the IRQ you want to the correct PIRQ for that slot.

Please note the table, notes and INT details are only examples provided by the reference motherboard. They may vary from motherboard to motherboard. For example, Intel i8xx chipsets have 8 interrupt lines (INT A to INT H). In i8xx motherboards, the AGP slot will always have its own IRQ. Thanks to alex-the-cat for that info!

Go Back To > The Tech ARP BIOS Guide | Home

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participating in the Tech ARP Forums, or even donating to our fund. Any help you can render is greatly appreciated!


AGP 2X Mode – The BIOS Optimization Guide

AGP 2X Mode

Common Options : Enabled, Disabled

 

Quick Review

The AGP 2X Mode BIOS feature is a toggle for the motherboard’s AGP 2X support.

When enabled, it allows the AGP bus to make use of the AGP 2X transfer protocol to boost the AGP bus bandwidth. If it’s disabled, then the AGP bus will only use the standard AGP 1X transfer protocol.

The AGP 2X protocol must be supported by both the motherboard and graphics card for this feature to work. Of course, this feature will only appear in your BIOS if your motherboard supports the AGP 2X transfer protocol!

All you need to do is make sure your graphics card supports AGP 2X transfers. If it does, enable AGP 2X Mode to take advantage of the faster transfer mode.

Disable it only if you are facing stability issues or if you intend to overclock the AGP bus beyond 75 MHz with sidebanding support enabled.

 

Details

The AGP 2X Mode BIOS feature is found on AGP 2X-capable motherboards. When enabled, it allows the AGP bus to make use of the AGP 2X transfer protocol to boost the AGP bus bandwidth. If it’s disabled, then the AGP bus will only use the standard AGP 1X transfer protocol.

The baseline AGP 1X protocol only makes use of the rising edge of the AGP signal for data transfer. This translates into a bandwidth of 264 MB/s. But enabling AGP 2X Mode doubles that bandwidth by transferring data on both the rising and falling edges of the signal. Through this method, the effective bandwidth of the AGP bus is doubled even though the AGP clock speed remains at the standard 66 MHz. This is the same method by which UltraDMA/33 derives its performance boost.

[adrotate group=”2″]

The AGP 2X protocol must be supported by both the motherboard and graphics card for this feature to work. Of course, this feature will only appear in your BIOS if your motherboard supports the AGP 2X transfer protocol!

All you need to do is make sure your graphics card supports AGP 2X transfers. If it does, enable AGP 2X Mode to take advantage of the faster transfer mode.

Disable it only if you are facing stability issues or if you intend to overclock the AGP bus beyond 75 MHz with sidebanding support enabled.

Please note that doubling the AGP bus bandwidth through the AGP 2X transfer protocol won’t double the performance of your AGP graphics card. The performance of the graphics card relies on far more than the bandwidth of the AGP bus. The performance boost is most apparent when the AGP bus is really stressed (i.e. during a texture-intensive game).

Go Back To > The BIOS Optimization Guide | Home

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participating in the Tech ARP Forums, or even donating to our fund. Any help you can render is greatly appreciated!

Init Display First – The BIOS Optimization Guide

Init Display First

Common Options : AGP or PCIe, PCI

 

Quick Review

The Init Display First BIOS feature allows you to select whether to boot the system using the PCIe / AGP graphics card or the PCI graphics card. This is important if you have both PCIe / AGP and PCI graphics cards.

If you are only using a single graphics card, the BIOS will ignore this BIOS setting and boot the computer using that graphics card. However, there may be a slight reduction in the time taken to detect and initialize the card if you select the proper setting. For example, if you only use a PCIe / AGP graphics card, then setting Init Display First to PCIe or AGP may speed up your system’s booting-up process.

If you are only using a single graphics card, it is recommended that you set the Init Display First feature to the proper setting for your system :

  • PCIe for a single PCIe card,
  • AGP for a single AGP card, and
  • PCI for a single PCI card.

But if you are using multiple graphics cards, it is up to you which card you want to use as your primary display card. It is recommended that you select the fastest graphics card as the primary display card.

 

Details

Although the PCI Express and AGP buses were designed exclusively for the graphics subsystem, some users still have to use PCI graphics cards for multi-monitor support. This was more common with AGP motherboards because there can be only one AGP port, while PCI Express motherboards can have multiple PCIe slots.

If you want to use multiple monitors on AGP motherboards, you must either get an AGP graphics card with multi-monitor support, or use PCI graphics cards. PCI Express motherboards usually have multiple PCIe slots, but there may still not be enough PCIe slots, and you may need to install PCI graphics cards.

For those who upgraded from a PCI graphics card to an AGP graphics card, it is certainly enticing to use the old PCI graphics card to support a second monitor. The PCI card would do the job just fine as it merely sends display data to the second monitor. You don’t need a powerful graphics card to run the second monitor, if it’s merely for display purposes.

When it comes to a case of a PCI Express or an AGP graphics card working in tandem with a PCI graphics card, the BIOS has to determine which graphics card is the primary graphics card. Naturally, the default would be the PCIe or AGP graphics card since it would naturally be the faster graphics card.

However, there are situations in which you may want to manually select the PCI graphics card instead. For example – you have a PCIe / AGP graphics card as well as a PCI graphics card, but only one monitor. This is where the Init Display First BIOS feature comes in. It allows you to select whether to boot the system using the PCIe / AGP graphics card or the PCI graphics card.

[adrotate banner=”5″]

If you are only using a single graphics card, the BIOS will ignore this BIOS setting and boot the computer using that graphics card. However, there may be a slight reduction in the time taken to detect and initialize the card if you select the proper setting. For example, if you only use a PCIe / AGP graphics card, then setting Init Display First to PCIe or AGP may speed up your system’s booting-up process.

If you are only using a single graphics card, it is recommended that you set the Init Display First feature to the proper setting for your system :

  • PCIe for a single PCIe card,
  • AGP for a single AGP card, and
  • PCI for a single PCI card.

But if you are using multiple graphics cards, it is up to you which card you want to use as your primary display card. It is recommended that you select the fastest graphics card as the primary display card.

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participating in the Tech ARP Forums, or even donating to our fund. Any help you can render is greatly appreciated!

Graphics Aperture Size – The BIOS Optimization Guide

Graphics Aperture Size

Common Options : 4, 8, 16, 32, 64, 128, 256 (in MB)

 

Quick Review

The Graphics Aperture Size BIOS feature does two things. It selects the size of the AGP aperture and it determines the size of the GART (Graphics Address Relocation Table).

The aperture is a portion of the PCI memory address range that is dedicated for use as AGP memory address space while the GART is a translation table that translates AGP memory addresses into actual memory addresses which are often fragmented. The GART allows the graphics card to see the memory region available to it as a contiguous piece of memory range.

Host cycles that hit the aperture range are forwarded to the AGP bus without need for translation. The aperture size also determines the maximum amount of system memory that can be allocated to the AGP graphics card for texture storage.

Please note that the AGP aperture is merely address space, not actual physical memory in use. Although it is very common to hear people recommending that the AGP aperture size should be half the size of system memory, that is wrong!

The requirement for AGP memory space shrinks as the graphics card’s local memory increases in size. This is because the graphics card will have more local memory to dedicate to texture storage. So, if you upgrade to a graphics card with more memory, you shouldn’t be “deceived” into thinking that you will need even more AGP memory! On the contrary, a smaller AGP memory space will be required.

It is recommended that you keep the Graphics Aperture Size around 64 MB to 128 MB in size, even if your graphics card has a lot of onboard memory. This allows flexibility in the event that you actually need extra memory for texture storage. It will also keep the GART (Graphics Address Relocation Table) within a reasonable size.

 

Details

The Graphics Aperture Size BIOS feature does two things. It selects the size of the AGP aperture and it determines the size of the GART (Graphics Address Relocation Table).

The aperture is a portion of the PCI memory address range that is dedicated for use as AGP memory address space while the GART is a translation table that translates AGP memory addresses into actual memory addresses which are often fragmented. The GART allows the graphics card to see the memory region available to it as a contiguous piece of memory range.

Host cycles that hit the aperture address range are forwarded to the AGP bus without need for translation. The aperture size also determines the maximum amount of system memory that can be allocated to the AGP graphics card for texture storage.

The graphics aperture size is calculated using this formula :

AGP Aperture Size = (Maximum usable AGP memory size x 2) + 12 MB

As you can see, the actual available AGP memory space is less than half the AGP aperture size set in the BIOS. This is because the AGP controller needs a write combined memory areaequal in size to the actual AGP memory area (uncached) plus an additional 12MB for virtual addressing.

Therefore, it isn’t simply a matter of determining how much AGP memory space you need. You also need to calculate the final aperture size by doubling the amount of AGP memory space desired and adding 12MB to the total.

Please note that the AGP aperture is merely address space, not actual physical memory in use. It doesn’t lock up any of your system memory. The physical memory is allocated and released as needed whenever Direct3D makes a “create non-local surface” call.

Windows 95 (with VGARTD.VXD) and later versions of Microsoft Windows use a waterfall method of memory allocation. Surfaces are first created in the graphics card’s local memory. When that memory is full, surface creation spills over into AGP memory and then system memory. So, memory usage is automatically optimized for each application. AGP and system memory are not used unless absolutely necessary.

Unfortunately, it is very common to hear people recommending that the AGP aperture size should be half the size of system memory. However, this is wrong for the same reason why swapfile size should not be fixed at 1/4 of system memory. Like the swapfile, the requirement for AGP memory space shrinks as the graphics card’s local memory increases in size. This is because the graphics card will have more local memory to use for texture storage!

This reduces the need for AGP memory. Therefore, when you upgrade to a graphics card with more memory, you shouldn’t be “deceived” into thinking that you will need even more AGP memory! On the contrary, a smaller AGP memory space will be required.

[adrotate banner=”5″]

If your graphics card has very little graphics memory (4 MB16 MB), you may need to create a large AGP aperture, up to half the size of the system memory. The graphics card’s local memory and the AGP aperture size combined should be roughly around 64 MB. Please note that the size of the aperture does not correspond to performance! Increasing it to gargantuan proportions will not improve performance.

Still, it is recommended that you keep the Graphics Aperture Size around 64 MB to 128 MB. Now, why should we use such a large aperture size when most graphics cards come with large amounts of local memory? Shouldn’t we set it to the absolute minimum to save system memory?

  1. First of all, setting it to a lower memory won’t save you memory! Don’t forget that all the AGP aperture size does is limit the amount of system memory the AGP bus can appropriate whenever it needs more memory. It is not used unless absolutely necessary. So, setting the AGP aperture size to 64 MB doesn’t mean that 64 MB of your system memory will be appropriated and reserved for the AGP bus’ use. What it does it limit the AGP bus to a maximum of 64 MB of system memory when the need arises.
  2. Next, most graphics cards require an AGP aperture of at least 16MB in size to work properly. Many new graphics cards require even more. This is probably because the virtual addressing space is already 12 MB in size! So, setting the AGP Aperture Size to 4 MB or 8 MB is a big no-no.
  3. We should also remember that many software have AGP aperture size and texture storage requirements that are mostly unspecified. Some applications will not work with AGP apertures that are too small. And some games use so much textures that a large AGP aperture is needed even with graphics cards with large memory buffers.
  4. Finally, you should remember that the actual available AGP memory space is less than half the size of the AGP aperture size you set. If you want just 15 MB of AGP memory for texture storage, the AGP aperture has to be at least 42 MB in size! Therefore, it makes sense to set a large AGP aperture size in order to cater for all eventualities.

Now, while increasing the AGP aperture size beyond 128 MB won’t take up system memory, it would still be best to keep the aperture size in the 64 MB – 128 MB range so that the GART (Graphics Address Relocation Table) won’t become too big. The larger the GART gets, the longer it takes to scan through the GART and find the translated address for each AGP memory address request.

With local memory on graphics cards increasing to incredible sizes and texture compression commonplace, there’s really not much need for the AGP aperture size to grow beyond 64 MB. Therefore, it is recommended that you set the Graphics Aperture Size to 64 MB or at most, 128 MB.

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participate in the Tech ARP Forums, or even donate to our fund. Any help you can render is greatly appreciated!

AGP ISA Aliasing – The BIOS Optimization Guide

AGP ISA Aliasing

Common Options : Enabled, Disabled

 

Quick Review

The AGP ISA Aliasing BIOS feature allows you to determine if the system controller will perform ISA aliasing to prevent conflicts between ISA devices.

The default setting of Enabled forces the system controller to alias ISA addresses using address bits [15:10]. This restricts all 16-bit addressing devices to a maximum contiguous I/O space of 256 bytes.

When disabled, the system controller will not perform any ISA aliasing and all 16 address lines can be used for I/O address space decoding. This gives 16-bit addressing devices access to the full 64KB I/O space.

It is recommended that you disable AGP ISA Aliasing for optimal AGP (and PCI) performance. It will also prevent your AGP or PCI cards from conflicting with your ISA cards. Enableit only if you have ISA devices that are conflicting with each other.

 

Details

The origin of the AGP ISA Aliasing feature can be traced back all the way to the original IBM PC. When the IBM PC was designed, it only had ten address lines (10-bits) for I/O space allocation. Therefore, the I/O space back in those days was only 1KB or 1024 bytes in size. Out of those 1024 available addresses, the first 256 addresses were reserved exclusively for the motherboard’s use, leaving the last 768 addresses for use by add-in devices. This would become a critical factor later on.

Later, motherboards began to utilize 16 address lines for I/O space allocation. This was supposed to create a contiguous I/O space of 64KB in size. Unfortunately, many ISA devices by then were only capable of doing 10-bit decodes. This was because they were designed for computers based on the original IBM design which only supported 10 address lines.

To circumvent this problem, they fragmented the 64KB I/O space into 1KB chunks. Unfortunately, because the first 256 addresses must be reserved exclusively for the motherboard, this means that only the first (or lower) 256 bytes of each 1KB chunk would be decoded in full 16-bits. All 10-bits-decoding ISA devices are, therefore, restricted to the last (or top) 768 bytes of the 1KB chunk of I/O space.

As a result, such ISA devices only have 768 I/O locations to use. Because there were so many ISA devices back then, this limitation created a lot of compatibility problems because the chances of two ISA cards using the same I/O space were high. When that happened, one or both of the cards would not work. Although they tried to reduce the chance of such conflicts by standardizing the I/O locations used by different classes of ISA devices, it was still not good enough.

Eventually, they came up with a workaround. Instead of giving each ISA device all the I/O space it wants in the 10-bit range, they gave each a much ISA device smaller number of I/O locations and made up for the difference by “borrowing” them from the 16-bit I/O space! Here’s how they did it.

The ISA device would first take up a small number of I/O locations in the 10-bit range. It then extends its I/O space by using 16-bit aliases of the few 10-bit I/O locations taken up earlier. Because each I/O location in the 10-bit decode area has sixty-three16-bit aliases, the total number of I/O locations expands from just 768 locations to a maximum of 49,152 locations!

More importantly, each ISA card will now require very few I/O locations in the 10-bit range. This drastically reduced the chances of two ISA cards conflicting each other in the limited 10-bit I/O space. This workaround naturally became known as ISA Aliasing.

Now, that’s all well and good for ISA devices. Unfortunately, the 10-bit limitation of ISA devices becomes a liability to devices that require 16-bit addressing. AGP and PCI devices come to mind. As noted earlier, only the first 256 addresses of the 1KB chunks support 16-bit addressing. What that really means is all 16-bit addressing devices are thus limited to only 256 bytes of contiguous I/O space!

When a 16-bit addressing device requires a larger contiguous I/O space, it will have to encroach on the 10-bit ISA I/O space. For example, if an AGP card requires 8KB of contiguous I/O space, it will take up eight of the 1KB I/O chunks (which will comprise of eight 16-bit areas and eight 10-bit areas!). Because ISA devices are using ISA Aliasing to extend their I/O space, there’s now a high chance of I/O space conflicts between ISA devices and the AGP card. When that happens, the affected cards will most probably fail to work.

[adrotate banner=”5″]

There are two ways out of this mess. Obviously, you can limit the AGP card to a maximum of 256 bytes of contiguous I/O space. Of course, this is not an acceptable solution.

The second, and the preferred method, would be to throw away the restriction and provide the AGP card with all the contiguous I/O space it wants.

Here’s where the AGP ISA Aliasing BIOS feature comes in.

The default setting of Enabled forces the system controller to alias ISA addresses using address bits [15:10] – the last 6-bits. Only the first 10-bits (address bits 0 to 9) are used for decoding. This restricts all 16-bit addressing devices to a maximum contiguous I/O space of 256 bytes.

When disabled, the system controller will not perform any ISA aliasing and all 16 address lines can be used for I/O address space decoding. This gives 16-bit addressing devices access to the full 64KB I/O space.

It is recommended that you disable AGP ISA Aliasing for optimal AGP (and PCI) performance. It will also prevent your AGP or PCI cards from conflicting with your ISA cards. Enableit only if you have ISA devices that are conflicting with each other.

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participate in the Tech ARP Forums, or even donate to our fund. Any help you can render is greatly appreciated!

AGP Always Compensate – BIOS Optimization Guide

AGP Always Compensate

Common Options : Enabled, Disabled

 

Quick Review

This BIOS feature determines if the AGP controller should be allowed to dynamically adjust the AGP driving strength or use preset drive strength values.

By default, it is set to automatically adjust the AGP drive strength once or at regular intervals. The circuitry can also be disabled or bypassed and a user setting used. However, this BIOS feature does not allow manual configuration.

When you enable AGP Always Compensate, the auto-compensation circuitry will automatically adjust the AGP drive strength at regular intervals.

If you disable it, the circuitry will only adjust the drive strength once at boot-up. The drive strength values derived at boot-up will remain until the system is rebooted.

It is recommended that you enable AGP Always Compensate so that the AGP controller can dynamically adjust the AGP driving strength at regular intervals.

 

Details

This feature is somewhat similar to the AGP Drive Strength feature. It determines if the AGP controller should be allowed to dynamically adjust the AGP driving strength or use preset drive strength values.

Due to the tighter tolerances of the AGP 8X and AGP 4X bus, the AGP controller features auto-compensation circuitry that compensate for the motherboard’s impedance on the AGP bus. It does this by dynamically adjusting the drive strength of the I/O pads over a range of temperature and voltages.

The auto-compensation circuitry has two operating modes. By default, it is set to automatically compensate for the impedance once or at regular intervals by dynamically adjusting the AGP drive strength. The circuitry can also be disabled or bypassed. In this case, it is up to the user (through the BIOS) to write the desired drive strength value to the AGP I/O pads.

[adrotate banner=”5″]

This is where AGP Always Compensate differs from the AGP Drive Strength feature. While AGP Drive Strength allows you to switch to manual configuration by the user, AGP Always Compensate does not. It only allows you to change the auto-compensation mode.

When you enable AGP Always Compensate, the auto-compensation circuitry will dynamically compensate for changes in the impendance at regular intervals.

If you disable it, the circuitry will only compensate for the impedance once at boot-up. The drive strength values derived at boot-up will remain until the system is rebooted.

It is recommended that you enable AGP Always Compensate so that the AGP controller can initiate dynamic compensation at regular intervals. This will allow it to compensate for any changes in the impedance.

Go Back To > The BIOS Optimization Guide | Home

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participate in the Tech ARP Forums, or even donate to our fund. Any help you can render is greatly appreciated!

DBI Output for AGP Trans. – BIOS Optimization Guide

DBI Output for AGP Trans.

Common Options : Enabled, Disabled

 

Quick Review

The full name for this BIOS feature is Dynamic Bus Inversion Output for AGP Transmitter. DBI Output for AGP Trans. is an AGP 3.0-specific BIOS feature which will only appear when you install an AGP 3.0-compliant graphics card.

When enabled, the AGP controller is allowed to use the Dynamic Bus Inversion scheme to reduce power consumption and signal noise.

When disabled, the AGP controller will not use the Dynamic Bus Inversion scheme to reduce power consumption and signal noise.

The AGP bus has 32 data lines divided into two sets. Sometimes, a large number of these data lines may switch together to the same polarity (either 1 or 0) and then switch back to the opposite polarity. This mass switching to the same polarity is called simultaneous switching outputs and it creates a lot of unwanted electrical noise at the AGP controller and GPU interfaces.

To avoid this, the AGP 3.0 specifications introduced a scheme called Dynamic Bus Inversion or DBI. It makes use of two new DBI lines – one for each 16-line set. These DBI lines are only supported by AGP 3.0-compliant graphics cards.

Dynamic Bus Inversion ensures that the data lines are limited to a maximum of 8 simultaneous switchings or transitions per 16-line set. It does so by switching the DBI line instead of the data lines when the number of simultaneous transitions exceeds 8 or 50% of the data lines. This ensures that electrical noise due to simultaneous switching outputs are minimized.

In short, DBI improves stability of the AGP interface by reducing signal noises that occur as a result of simultaneous switching outputs. It also reduces the AGP controller’s power consumption.

Therefore, it is recommended that you enable DBI Output for AGP Trans. to save power as well as reduce signal noise from simultaneous switching outputs.

 

Details

The full name for this BIOS feature is Dynamic Bus Inversion Output for AGP Transmitter. DBI Output for AGP Trans. is an AGP 3.0-specific BIOS feature which will only appear when you install an AGP 3.0-compliant graphics card.

The AGP bus has 32 data lines divided into two sets. In each set, there are 16 data lines which individually switches to either a high (1) or low (0) as it sends out data. Sometimes, a large number of these data lines may switch together to the same polarity (either 1 or 0) and then switch back to the opposite polarity.

This mass switching to the same polarity is called simultaneous switching outputs and it creates a lot of unwanted electrical noise at the AGP controller and GPU interfaces. This is only significant if the number of lines simultaneously switching to the same polarity exceeds50% of the data lines.

To avoid this, the AGP 3.0 specifications introduced a scheme called Dynamic Bus Inversion or DBI. It makes use of two new DBI lines – one for each 16-line set. These DBI lines are only supported by AGP 3.0-compliant graphics cards.

When enabled, it will ensure that the data lines are limited to a maximum of 8 simultaneous switchings or transitions per 16-line set. When the number of simultaneous transitions exceeds 8 or 50% of the data lines, the AGP controller switches the polarity of the DBI line instead. The data lines that were supposed to switch en masse to the opposite polarity remain at the same polarity.

When disabled, there will be no restrictions to the number of simultaneous switchings that the data lines can perform.

[adrotate banner=”4″]

At the receiving end however, the data is reproduced exactly as it was meant to. This is because the DBI line actually serves as a reference signal for the AGP data signals! Although the data signals may have been inverted on the transmitter end, the inverted DBI signal corrects it at the receiving end.

But because only one, instead of 9 or more, data lines switched to the opposite polarity, the amount of electrical noise generated is significantly reduced. In short, DBI improves stability of the AGP interface by reducing signal noises that occur as a result of simultaneous switching outputs. It also reduces the AGP controller’s power consumption.

Therefore, it is recommended that you enable DBI Output for AGP Trans. to save power as well as reduce signal noise from simultaneous switching outputs.

Go Back To > The BIOS Optimization Guide | Home

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participating in the Tech ARP Forums, or even donating to our fund. Any help you can render is greatly appreciated!

AGP 3.0 Calibration Cycle – BIOS Optimization Guide

AGP 3.0 Calibration Cycle

Common Options : Enabled, Disabled

 

Quick Review

This BIOS feature controls the AGP 3.0 calibration cycle feature of the motherboard chipset. It is only found in motherboards that support the AGP 3.0 standard.

When enabled, the motherboard chipset will periodically initiate a dynamic calibration cycle on the AGP bus. This allows the AGP bus to maintain its timings and signal integrity.

When disabled, the motherboard chipset will not initiate any dynamic calibration cycle on the AGP bus. The AGP bus timings and signal integrity may suffer from changes in voltage and temperature during operation.

As the dynamic calibration cycle maintains the AGP 3.0 bus’ timings and signal integrity, it is highly recommended that you leave it at the default setting of Enabled.

However, please note that this feature is only implemented if both motherboard chipset and AGP graphics card are operating in the AGP 3.0 mode. It is automatically disabled when the AGP 2.0 mode is used.

 

Details

The AGP 3.0 signaling scheme has very tight tolerances for its high-speed, source-synchronous signals which include the AD (data) bus and DBI (Dynamic Bus Inversion) signals. Unfortunately, key parameters like termination impedence, signal swing and slew rate can change due to changes in voltage and temperature during operation. These variations in key parameters can affect timing and signal integrity.

[adrotate banner=”4″]Therefore, the AGP 3.0 standard includes support for a dynamic calibration cycle. This feature allows the AGP 3.0 bus to dynamically recalibrate its source-synchronous signals over time.

The dynamic calibration cycle is periodically initiated by the motherboard chipset. By default, the AGP bus undergoes a dynamic calibration cycle every 4 ms. But the period between calibrations may be extended up to 256 ms, depending on motherboard implementation.

When a dynamic calibration cycle occurs, the chipset takes control of the AGP bus and initializes the dynamic calibration cycle. This takes three or more clock cycles to complete. Thereafter, the bus is released and a new AGP transaction may begin.

This BIOS feature controls the AGP 3.0 calibration cycle feature of the motherboard chipset. It is only found in motherboards that support the AGP 3.0 standard.

When enabled, the motherboard chipset will periodically initiate a dynamic calibration cycle on the AGP bus. This allows the AGP bus to maintain its timings and signal integrity.

When disabled, the motherboard chipset will not initiate any dynamic calibration cycle on the AGP bus. The AGP bus timings and signal integrity may suffer from changes in voltage and temperature during operation.

As the dynamic calibration cycle maintains the AGP 3.0 bus’ timings and signal integrity, it is highly recommended that you leave it at the default setting of Enabled.

However, please note that this feature is only implemented if both motherboard chipset and AGP graphics card are operating in the AGP 3.0 mode. It is automatically disabled when the AGP 2.0 mode is used.

 

Support Tech ARP!

If you like our work, you can help support out work by visiting our sponsors, participate in the Tech ARP Forums, or even donate to our fund. Any help you can render is greatly appreciated!

AGP Read Synchronization – BIOS Optimization Guide

AGP Read Synchronization

Common Options : Enabled, Disabled

 

Quick Review

This BIOS feature ensures proper synchronization of data transferred on the AGP bus.

When enabled, the chipset will wait until all writes in the Global Write Buffer are completely written to the system memory before it initiates any writes to the AGP graphics card.

When disabled, the chipset will allow data from the system memory to be written to the AGP graphics card, even if the Global Write Buffer has not completed its data transfers to the system memory.

While it may seem that AGP Read Synchronization should be enabled, this is actually not true. To avoid data synchronization problems, the chipset actually allows the Global Write Buffer to be snooped. If the data is found in the Global Write Buffer, it is read directly from the buffer and then the buffer is flushed.

However, it is not possible for both methods to be enabled simultaneously. One of these two methods must be enabled for proper synchronization of data, but not both at the same time.

For performance reasons alone, AGP Read Synchronization should be disabled. In addition, many motherboard BIOS setup utilities do not allow you to disable the snooping of the Global Write Buffer. Therefore, if you enable AGP Read Synchronization, you will experience problems with your graphics card, especially when data is written to the AGP aperture.

 

Details

When the graphics processor writes data to the AGP aperture, it doesn’t directly write the data to the system memory. Doing so will tie up the graphics processor for a long time as the AGP bus (as well as system memory) is many, many times slower than the local memory buffer.

Instead, the graphics processor writes the data to a Global Write Buffer. This allows the graphics processor to be quickly released for other duties. The Global Write Buffer then writes the data to the system memory, while the graphics processor is working on something else.

Unfortunately, the use of the Global Write Buffer means that data synchronization may be a problem. If the graphics processor writes data to the AGP aperture and then requests the same data before the write buffer completes the write process, the graphics processor will receive outdated or incorrect data.

This is where the AGP Read Synchronization BIOS feature comes in. It ensures proper synchronization of data transferred on the AGP bus.

When enabled, the chipset will wait until all writes in the Global Write Buffer are completely written to the system memory before it initiates any writes to the AGP graphics card.

When disabled, the chipset will allow data from the system memory to be written to the AGP graphics card, even if the Global Write Buffer has not completed its data transfers to the system memory.

While it may seem that AGP Read Synchronization should be enabled, this is actually not true. To avoid data synchronization problems, the chipset actually allows the Global Write Buffer to be snooped. If the data is found in the Global Write Buffer, it is read directly from the buffer and then the buffer is flushed.

[adrotate banner=”4″]

However, it is not possible for both methods to be enabled simultaneously. If AGP Read Synchronization is enabled, no writes to the AGP graphics card can occur until the Global Write Buffer is emptied. But for the Global Write Buffer to be snooped, a write must first be initiated by the chipset. This is a Catch-22 situation which is logically not allowed by the chipset.

One of these two methods must be enabled for proper synchronization of data, but not both at the same time. Snooping the Global Write Buffer provides some performance advantage when data is found in the buffer, because the graphics processor can read directly from the buffer. On the hand, waiting for the Global Write Buffer to complete writing its data, before the chipset can initiate writes to the AGP graphics card, reduces performance.

For performance reasons alone, AGP Read Synchronization should be disabled. In addition, many motherboard BIOS setup utilities do not allow you to disable the snooping of the Global Write Buffer. Therefore, if you enable AGP Read Synchronization, you will experience problems with your graphics card, especially when data is written to the AGP aperture.

Go Back To > The BIOS Optimization Guide | Home

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participating in the Tech ARP Forums, or even donating to our fund. Any help you can render is greatly appreciated!

AGP to DRAM Prefetch – BIOS Optimization Guide

AGP to DRAM Prefetch

Common Options : Enabled, Disabled

 

Quick Review

This feature controls the system controller’s AGP prefetch capability.

When enabled, the system controller will prefetch data whenever the AGP graphics card reads from system memory. This speeds up AGP reads as it allows contiguous memory reads by the AGP graphics card to proceed with minimal delay.

It is highly recommended that you enable this feature for better AGP read performance.

 

Details

This feature controls the system controller’s AGP prefetch capability. When enabled, the system controller will prefetch data whenever the AGP graphics card reads from system memory. Here is how it works.

[adrotate banner=”4″]Whenever the system controller reads AGP-requested data from system memory, it also reads the subsequent chunk of data. This is done on the assumption that the AGP graphics card will request for the subsequent chunk of data. When the AGP graphics card actually initiates a read command for that chunk of data, the system controller can immediately send it to the AGP graphics card.

This speeds up AGP memory reads as the AGP graphics card won’t need to wait for the system controller to read from system memory. In other words, AGP to DRAM Prefetch allows contiguous memory reads by the AGP graphics card to proceed with minimal delay.

It is highly recommended that you enable this feature for better AGP read performance. Please note that AGP writes to system memory do not benefit from this feature.

 

Support Tech ARP!

If you like our work, you can help support out work by visiting our sponsors, participate in the Tech ARP Forums, or even donate to our fund. Any help you can render is greatly appreciated!