# Getting the Most From Your PCI-E Intel® 10 Gigabit Server Adapter

| 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-E x8 slot.

   | NOTE: Some PCI-E x8 slots are actually configured as x4 slots. These slots have insufficient bandwidth for full 10Gbe line rate with dual port 10GbE devices. The driver can detect this situation and will write the following message in the system log: “PCI-Express bandwidth available for this card is not sufficient for optimal performance. For optimal performance a x8 PCI-Express slot is required.” If this error occurs, moving your adapter to a true x8 slot will resolve the issue.

2. Use the proper cabling for the adapter you have. See Attach the Network Cable 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 Setting MMRBC.

| NOTE: Some systems may set the adapter's MMRBC to 4096 by default.

5. 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.

6. 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.

# Getting the Most From Your PCI-X Intel® 10 Gigabit Server Adapter

| 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 same bus segment.

2. Use the proper fiber cabling for the adapter you have. See Attach the Network Cable 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 Setting MMRBC.

| NOTE: Some systems may set the adapter's MMRBC to 4096 by default.

5. 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.

6. 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 on some systems, especially when used in conjunction with Jumbo Frames. Follow these steps:

1. Install and run the utility.

2. Look for the device whose Vendor ID is 8086 and Device ID is 1048, 1A48, 1B48, 10F1, 10E1, 10C8, 10EC, 10C7, 10C6, 10F4, or 109E. This is the Intel 10 Gigabit adapter.

3. Find the register at offset E6. This will contain the value 22 or 42. The least-significant digit defines the MMRBC. Set a new value of 2E or 4E. This will set the MMRBC to 4096 bytes.

To change the MMRBC on an Itanium®-based computer, running Microsoft Windows Server* 2003 or Windows Server 2008, 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 whose Vendor ID is 8086 and Device ID is 1048, 1A48, 1B48, 10F1, 10E1, 10C8, 10EC, 10C7, 10C6, 10F4, or 109E. This is the Intel 10 Gigabit 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. Set a new value of 2E or 4E. 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 7/29/09 12:26a Revision 14`