Newer Intel Drivers for 10/100/1000 Cards

Pramod John pramod at oration.com
Fri Mar 29 11:20:30 EST 2002


Hi,
	Has anyone taken a look at the newer drivers from Intel for the 82559+
Cards ?  They have added some features (depending on what stepping of
the chip you have) that can do some interesting things. It would be
interesting to see what type of performance they can achieve vs. polling
drivers, or even extend them for polling. This chipset seems
to used in just about every Motherboard with embedded Enet out there. 
Alas I don't have a Smartbits or enough extra hw to test. Apparently
these plus some more features are available for the 1000 chipsets. 
So FYI:


Pramod


>From Intel README for Linux Drivers v. 1.8.38 
-------------------------------------------------------------------------

BundleMax
Valid Range: 0x1-0xFFFF
Default Value: 6
   This parameter holds the maximum number of packets in a bundle.
Suggested
   values range from 2 to 10. See "CPU Cycle Saver."

BundleSmallFr
Valid Range: 0-1 (0=off, 1=on)
Default Value: 0
   The value 1 (on) causes small

IntDelay
Valid Range: 0-0xFFFF (0=off)
Default Value: 0
   This parameter holds the number of time units (in adapter
terminology)
   until the adapter generates an interrupt. The recommended value for
   IntDelay is 0x600 (upon initialization). Suggested values range from
   0x200h to 0x800. See "CPU Cycle Saver." packets (less than 128 bytes)
to be bundled.
   See "CPU Cycle Saver."

CPU Cycle Saver
================

CPU Cycle Saver reduces CPU utilization by reducing the number of
interrupts
that the adapter generates.

When CPU Cycle Saver is turned off, the adapter generates one interrupt
for
every frame that is received. This means that the operating system stops
what
it is doing and switches to the network driver in order to process the
receive.

When CPU Cycle Saver is on, the adapter does not generate an interrupt
for
every frame it receives. Instead, it waits until it receives several
frames
before generating an interrupt. This reduces the amount of time spent
switching to and from the driver.

CPU Cycle Saver consists of these arguments: IntDelay, BundleMax and
BundleSmallFr. When IntDelay is increased, the adapter waits longer for
frames to arrive before generating the interrupt. By increasing
BundleMax, 
the network adapter waits for the number of frames specified to arrive
before 
generating the interrupt. When BundleSmallFr is disabled, the adapter
does
not bundle packets that are smaller than 128 bytes. Such small packets
are
often, but not always, control packets that are better served
immediately.

For most users, it is recommended that CPU Cycle Saver be used with the
default values specified in the Command Line Parameters section.
However, in
some cases, performance problems may occur with CPU Cycle Saver. If such
problems are observed, we recommend turning off this feature by setting
ucode=0.






More information about the click mailing list