The Definitive
BIOS Optimization Guide

by Adrian Wong

 

 






Byte Merge

Common Options : Enabled, Disabled

Details

This BIOS feature is similar to the PCI Dynamic Bursting feature.

If you have already read about the CPU to PCI Write Buffer feature, you should know that the chipset has an integrated write buffer which allows the CPU to immediately write up to four words of PCI writes to it, thus freeing it quickly and allowing it to work on other tasks.

However, the CPU doesn't always write 32-bit data to the PCI bus. 8-bit and 16-bit writes can also take place. But while the CPU may write 8-bits of data to the PCI bus, it is considered as a single PCI transaction, equivalent to a 16-bit or 32-bit write. This reduces the effective PCI bandwidth, especially if there are many 8-bit or 16-bit CPU-to-PCI writes.

To solve this problem, the write buffer can be programmed to accumulate and merge 8-bit and 16-bit writes into 32-bit writes. The buffer then writes the merged data to the PCI bus. As you can see, merging the smaller 8-bit or 16-bit writes into a few large 32-bit writes reduces the number of PCI transactions required. This increases the efficiency of the PCI bus and improves its bandwidth.

Therefore, it's recommended that you enable this feature for better PCI bus performance. But note that Byte Merge may be incompatible with certain PCI network interface cards. Boar-Ral explains :-

I noticed that some PCI cards really despise Byte Merge, in particular the 3Com 3C905 series of NICs. While this may only apply to certain motherboards, in my case the P3V4X, I feel this is probably not the case and it is a rather widespread problem.

Issues I have encountered with Byte Merge enabled range from Windows 98SE freezing at the boot screen to my NIC not functioning at all. This issue has been confirmed with others using the same NIC and is what alerted me to the issue in the first place.

Prozactive concurs :-

I wanted to confirm the observation posted by Boar-Ral concerning the "Byte Merge" BIOS setting. After enabling "Byte Merge" and making other recommended BIOS setting changes, I suddenly lost all network I/O from my system. And yes, I happen to be using a 3Com 3C905B-TX NIC (with an Asus A7V motherboard). After a great deal of trial and error troubleshooting, I found that disabling "Byte Merge" would let everything work again.

On the other hand, Cprall discovered that he was able to use the NIC in Windows 98 SE but not in Windows 2000. Check out what he has to say :-

I'll even third this to say I was recently bitten by the same (A7V motherboard at BIOS 1009 and 3C905B-TX network card). I did have one slight addition to what was seen here. With Byte Merge enabled, I was able to access the network under Windows 98 SE, but not Windows 2000. With Byte Merge disabled, the network card works under both.

As such, if your NIC (Network Interface Card) won't work properly, try disabling Byte Merge. That will take a bite out of the PCI bus' performance but that can't be helped if you want the NIC to work. Except for this exception, you should enable Byte Merge for better performance.

  

  

Comments?

If you have a comment or two about this guide, please post them here.

Thanks for your time and I hope you enjoyed the guide! :)

Adrian Wong
Adrian's Rojak Pot
http://www.rojakpot.com/
http://www.adriansrojakpot.com/

 

 
 

 

 
     
   

 

 
 

 
   

 

 
 
Last Updated 17-05-2002

All trademarks used are properties of their respective owners.
Copyright © 1998-2002 Adrian Wong. All rights reserved.

 
Visit the new Tech ARP @ http://www.techarp.com/ !