# Getting the Most From Your Intel® PRO/10GbE Server Adapter

Peak network performance for Intel PRO/10GbE server adapters may be achieved when the system is tuned for 10 gigabit network traffic.

| NOTE: These adjustments should be performed by a highly skilled network administrator. They are not guaranteed to improve performance. Not all settings shown here may be available through your BIOS, operating system or network driver configuration. Linux users, see the README file in the Linux driver package for Linux-specific performance enhancement details.)

1. Install the adapter in a PCI-X bus slot, with no other devices installed in the bus segment.

2. Use the proper fiber cabling for the adapter you have. See the user guide for details.

3. Enable Jumbo Frames, if your other network components can also be configured for it.

4. If your BIOS has an MMRBC (Maximum Memory Read Byte Count) adjustment, change it from its default (usually 512) to 4096 (maximum). If your BIOS does not support changing or modifying MMRBC, see the following section on setting MMRBC. NOTE: Some systems may set the adapter's MMRBC to 4096 by default.

5. If running Windows 2000, increase the TCP window size from its default setting to 65535 bytes, or to the nearest whole incremental value of the system MSS which is closest to, but less than 65535 bytes. For example: If the frame size in use is 1514 bytes (the default) the MSS is 1460 bytes. Set the TCP Window Size to 64240 which is 44 times 1460. If Jumbo frames are enabled and set to 9014 bytes, the MSS is 8960 bytes. Set the TCP Window Size to 62720 bytes which is 7 times 8960. (In Windows Server 2003, the TCP window size default value is 65535; no adjustment is necessary.)

6. Increase the number of TCP and Socket resources from the default value. For Windows based systems, we have not identified system parameters other than the TCP Window Size which significantly impact performance.

7. Increase the allocation size of Driver Resources (transmit/receive buffers). However, most TCP traffic patterns work best with the transmit buffer set to its default value, and the receive buffer set to its minimum value.

## Setting MMRBC (Maximum Memory Read Byte Count)

Setting the MMRBC to 4096 bytes may provide better performance with Intel PRO/10GbE adapters on some systems, especially when used in conjunction with jumbo frames.

To change the MMRBC on an IA32-based system running Microsoft Windows, you will need a runtime PCI configuration utility. These are readily available as shareware via the Internet. Follow these steps:

1. Install and run the utility.

2. Look for the device with Vendor ID is 8086 and Device ID is 1048, 1A48 or 1B48. This is the PRO/10GbE adapter.

3. Find the register at offset E6. This will contain the value 22 or 42. The least-significant digit defines the MMRBC. For example, if the register contains a value such as 22 or 42, then the MMRBC is 512 bytes. Set a new value of 2E or 4E as the case may be. This will set the MMRBC to 4096 bytes.

To change the MMRBC on an Itanium®-based computer, running Microsoft Windows Advanced Server 2003, use EFI commands to change this value. Follow these steps:

1. Boot the system into the EFI shell.

2. Run the command "PCI".

3. Scroll through the output and find the adapter with Vendor ID is 8086 and Device ID is 1048, 1A48 or 1B48. This is the PRO/10GbE adapter.

4. Record the values indicated for segment, bus, device, and function.

5. Run the mm command as follows:

`mm ssbbddffrr ;pci`

where ssbbddff refer to the values recorded from the PCI command above and rr is the offset E6. This will contain the value 22 or 42. The least-significant digit defines the MMRBC. For example, if the register contains a value such as 22 or 42, then the MMRBC is 512 bytes. Set a new value of 2E or 4E as the case may be. This will set the MMRBC to 4096 bytes.

6. Change the MMRBC by typing in the desired value and pressing enter.

7. Exit the program, making sure the value is saved in the register.

8. Exit the EFI shell.

9. Boot to the operating system.

`Last modified on 2/28/05 4:12p Revision 2`