From: Michal Soltys <soltys@ziu•info>
To: Linux Netdev List <netdev@vger•kernel.org>
Subject: questions / potential bug: e1000e and tx delay setting in msi-x mode
Date: Wed, 09 Sep 2009 22:15:42 +0200 [thread overview]
Message-ID: <4AA80CEE.5030704@ziu.info> (raw)
While experimenting a bit with intel PRO/1000 CT nic (reported by lspci as Intel
Corporation 82574L Gigabit Network Connection), I noticed following issues (?):
1) under default IntMode (MSI-X), TxAbsIntDelay doesn't seem to limit interrupt
rate (as seen via /proc/interrupts), although it is capped by InterruptThrottleRate
(or not at all, if this one is disabled).
For example: with TxIntDelay 100 and TxAbsIntDelay 1000 - rate (as read from
/proc/interrupts) under simple udp netcat bombarding (1k packet size):
nc -u somehost someport </dev/zero
... will be around 115k int/sec - expected value w/o any interrupt moderation.
When IntMode is set to 0 or 1 (so either regular or MSI) - both TxIntDelay and
TxAbsIntDelay seem to work properly - in the above example, rate would stay below
1500 int/sec. But ...
2) ... at the same time, cpu load (as reported by mpstat -P ALL 1) is barely better
in the latter case. Furthermore, if I disable any delays, e.g. load e1000e module with:
options e1000e TxIntDelay=0 TxAbsIntDelay=0 RxIntDelay=0 RxAbsIntDelay=0 InterruptThrottleRate=0 IntMode=1
.. then netcat test will max cpu core, and it will be unable to reach full 1gbit, while:
options e1000e TxIntDelay=0 TxAbsIntDelay=0 RxIntDelay=0 RxAbsIntDelay=0 InterruptThrottleRate=0 IntMode=2
.. will easily handle 1gbit with ~50%+ idle core (in my case at least).
Should the difference between MSI and MSI-X modes be so large ?
Earlier tests (pt. #1):
options e1000e TxIntDelay=100 TxAbsIntDelay=1000 RxIntDelay=0 RxAbsIntDelay=0 InterruptThrottleRate=0 IntMode=1
.. handles 1gbit with ~60%+ idle core.
and:
options e1000e TxIntDelay=100 TxAbsIntDelay=1000 RxIntDelay=0 RxAbsIntDelay=0 InterruptThrottleRate=0 IntMode=2
options e1000e TxIntDelay=0 TxAbsIntDelay=0 RxIntDelay=0 RxAbsIntDelay=0 InterruptThrottleRate=0 IntMode=2
.. are roughly identical as far as cpu load goes.
Those quick tests were done with nic interrupt(s) and netcat pinned at the same core.
Tested with current 2.6.31-rc9 and stable 2.6.30 tree.
next reply other threads:[~2009-09-09 20:15 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-09 20:15 Michal Soltys [this message]
2009-09-09 21:59 ` questions / potential bug: e1000e and tx delay setting in msi-x mode Brandeburg, Jesse
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4AA80CEE.5030704@ziu.info \
--to=soltys@ziu$(echo .)info \
--cc=netdev@vger$(echo .)kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox