Users Guide

Befehlszeilenparameter
Wenn der Treiber als Modul besteht, werden folgende optionalen Parameter durch Eingabe in die Befehlszeile zusam-
men mit dem Befehl "modprobe" unter Einsatz dieser Syntax verwendet:
modprobe ixgbevf [<option>=<VAL1>,<VAL2>,...]
Zum Beispiel:
modprobe ixgbevf InterruptThrottleRate=16000,16000
Außer wenn gesondert darauf hingewiesen wird, ist der Standardwert für jeden Parameter im Allgemeinen die emp-
fohlene Einstellung.
Die folgende Tabelle enthält Parameter und mögliche Werte für modprobe-Befehle:
Parametername ltiger
Bereich/
Einstell-
ungen
Stan-
dard
Beschreibung
Inter-
ruptThrottleRate
0, 1, 956 -
488,281
(0=aus, 1=d-
dynamisch)
8000 Der Treiber kann die Anzahl der Interrupts pro Sekunde beschränken,
die der Adapter für eingehende Pakete generiert. Dazu wird in den
Adapter ein Wert geschrieben, der auf der Höchstzahl der vom Adapter
generierten Interrupts pro Sekunde basiert.
Durch Setzen der InterruptThrottleRate auf einen Wert größer oder
gleich 100 wird der Adapter so programmiert, dass er maximal diese
Anzahl an Interrupts pro Sekunde aussendet, auch wenn einehere
Zahl von Paketen eingetroffen ist. Dadurch werden die Interrupt-Belas-
tung auf dem System und die CPU-Auslastung unter hoher Last redu-
ziert. Allerdings steigt gleichzeitig die Latenz, da die Pakete langsamer
verarbeitet werden.
Beim Standardverhalten des Treibers wurde zuvor ein statischer Wert
für InterruptThrottleRate von 8000 angenommen, was einen guten Aus-
weichwert für alle Verkehrstypen bietet, aber Leistungseinbußen bei
kleinen Paketen und Latenz mit sich bringt. Die Hardware kann jedoch
viel mehr kleine Pakete pro Sekunde abwickeln, aus welchem Grund
ein adaptiver Interrupt-Drosselungsalgorithmus implementiert wurde.
Der Treiber besitzt einen adaptiven Modus (Einstellung 1), in dem er
den Wert für InterruptThrottleRate anhand des empfangenen Verkehrs
dynamisch anpasst. Nach Bestimmung des Typs des eingehenden Ver-
kehrs im letzten Zeitrahmen wird die InterruptThrottleRate an einen für
diesen Verkehr geeigneten Wert angepasst.
Der Algorithmus klassifiziert den eingehenden Verkehr mit jedem Inter-
vall in Klassen. Nach Bestimmung der Klasse wird der Wert für Inter-
ruptThrottleRate an den Verkehrstyp angepasst. Drei Klassen sind
definiert: "Bulk traffic" für große Mengen von Paketen normaler Gße;
"Low latency" für kleine Mengen von Verkehr und/oder einen großen
Anteil kleiner Pakete; sowie "Lowest latency" für fast ausschließlich
kleine Pakete und minimalen Verkehr.
Im dynamischen konservativen Modus wird der Wert für Inter-
ruptThrottleRate für Verkehr der Klasse "Bulk traffic" auf 4000 gesetzt.
Wenn der Verkehr in die Klassen "Low latency" oder "Lowest latency"
fällt, wird die InterruptThrottleRate schrittweise auf 20.000 erhöht. Die-
ser Standardmodus ist für die meisten Anwendungen geeignet.
Wenn eine niedrige Latenz benötigt wird, etwa für Cluster oder Grid
Computing, kann der Algorithmus die Latenz noch weiter verringern,
wenn die InterruptThrottleRate auf den Modus 1 eingestellt wird. In die-
sem Modus wird die InterruptThrottleRate für Verkehr in der Klasse
"Lowest latency" schrittweise auf 70.000 erhöht.