Command line parameters – Dell Intel PRO Family of Adapters User Manual

Page 107

Advertising
background image

Command Line Parameters

If the driver is built as a module, the following optional parameters are used by entering them on the command line with
the modprobe command using this syntax:

modprobe ixgbevf [<option>=<VAL1>,<VAL2>,...]

For example:

modprobe ixgbevf InterruptThrottleRate=16000,16000

The default value for each parameter is generally the recommended setting, unless otherwise noted.

The following table contains parameters and possible values for modprobe commands:

Parameter Name

Valid

Range/Settings

Default

Description

Inter-
ruptThrottleRate

0, 1, 956 - 488,281
(0=off, 1=dynamic)

8000

The driver can limit the number of interrupts per second that
the adapter will generate for incoming packets. It does this by
writing a value to the adapter that is based on the maximum
number of interrupts that the adapter will generate per
second.

Setting InterruptThrottleRate to a value greater or equal to
100 will program the adapter to send out a maximum of that
many interrupts per second, even if more packets have come
in. This reduces interrupt load on the system and can lower
CPU utilization under heavy load, but will increase latency
as packets are not processed as quickly.

The default behavior of the driver previously assumed a
static InterruptThrottleRate value of 8000, providing a good
fallback value for all traffic types, but lacking in small packet
performance and latency. The hardware can handle many
more small packets per second however, and for this reason
an adaptive interrupt moderation algorithm was imple-
mented.

The driver has one adaptive mode (setting 1) in which it
dynamically adjusts the InterruptThrottleRate value based on
the traffic that it receives. After determining the type of incom-
ing traffic in the last timeframe, it will adjust the Inter-
ruptThrottleRate to an appropriate value for that traffic.

The algorithm classifies the incoming traffic every interval
into classes. Once the class is determined, the Inter-
ruptThrottleRate value is adjusted to suit that traffic type the
best. There are three classes defined: "Bulk traffic", for large
amounts of packets of normal size; "Low latency", for small
amounts of traffic and/or a significant percentage of small
packets; and "Lowest latency", for almost completely small
packets or minimal traffic.

In dynamic conservative mode, the InterruptThrottleRate
value is set to 4000 for traffic that falls in class "Bulk traffic". If
traffic falls in the "Low latency" or "Lowest latency" class, the
InterruptThrottleRate is increased stepwise to 20000. This
default mode is suitable for most applications.

For situations where low latency is vital such as cluster or
grid computing, the algorithm can reduce latency even more
when InterruptThrottleRate is set to mode 1. In this mode, the
InterruptThrottleRate will be increased stepwise to 70000 for
traffic in class "Lowest latency".

NOTES:

l

Dynamic interrupt throttling is only applicable to
adapters operating in MSI or Legacy interrupt
mode, using a single receive queue.

l

When ixgbevf is loaded with default settings
and multiple adapters are in use sim-
ultaneously, the CPU utilization may increase
non-linearly. In order to limit the CPU utilization
without impacting the overall throughput, it is
recommended to load the driver as follows

modprobe ixgbevf Inter-

ruptThrottleRate-

e=3000,3000,3000

This sets the InterruptThrottleRate to 3000 inter-
rupts/sec for the first, second, and third
instances of the driver. The range of 2000 to
3000 interrupts per second works on a majority
of systems and is a good starting point, but the
optimal value will be platform-specific. If CPU
utilization is not a concern, use default driver
settings.

Advertising