Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 1 Jan 2000 05:14:05 +0000 (GMT)
From:      Mike Silbersack <silby@silby.com>
To:        <freebsd-current@freebsd.org>
Subject:   Some interrupt coalescing tests
Message-ID:  <20000101045805.G4587-200000@patrocles.silby.com>

next in thread | raw e-mail | index | archive | help
  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

--0-419118699-946703556=:4587
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
Content-ID: <20000101051245.S4587@patrocles.silby.com>


Well, I've been watching everyone argue about the value of interrupt
coalescing in the net drivers, so I decided to port terry's patch to 4.4 &
-current to see what the results are.  The patch included applies cleanly
to 4.4's if_dc, and will apply to -current with a one line change.
Whitespace is horrible, I copied and pasted the original patch, used patch
-l, etc.

The test setup I used was as follows:
Duron 600, PNIC, running -current
Celeron 450, ADMtek tulip-clone, running -stable

The network is 100mbps, switched.  To simulate load, I used a syn flooder
aimed at an unused port.  icmp/rst response limiting was enabled.

With the -current box attacking the -stable box, I was able to notice a
slight drop in interrupts/second with the patch applied.  The number of
packets was ~57000/second.

Before: ~46000 ints/sec, 57-63% processor usage due to interrupts.
After: ~38000 ints/sec, 50-60% processor usage due to interrupts.

In both cases, the box felt responsive.

With the -stable box attacking the -current box, the patch made no
difference.  The box bogged down at only ~25000 ints/sec, and response
limiting reported the number of packets to be ~44000/second.

I'm not sure if the number was lower because the celeron couldn't run the
flooder as quickly, or if the -current box was dropping packets.  I
suspect the latter, as the -current box was NOTICEABLY slowed down; I
could watch systat refresh the screen.

The conclusion?  I think that the dc driver does a good enough job of
grabbing multiple packets at once, and won't be helped by Terry's patch
except in a few very cases.  In fact, I have a sneaky suspicion that
Terry's patch may increase bus traffic slightly.  I'm not sure how much of
an issue this is, perhaps Bill or Luigi could comment.

In short, if we're going to try to tackle high interrupt load, it should
be done by disabling interrupts and going to polling under high load;
the patch proposed here isn't worth the extra complexity.

I suppose this would all change if we were using LRP and doing lots of
processing in the interrupt handler... but we aren't.

Mike "Silby" Silbersack

--0-419118699-946703556=:4587
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII; NAME="if_dc.diff"
Content-Transfer-Encoding: BASE64
Content-ID: <20000101051236.L4587@patrocles.silby.com>
Content-Description: 
Content-Disposition: ATTACHMENT; FILENAME="if_dc.diff"

LS0tIGlmX2RjLmMub3JpZwlUaHUgT2N0IDExIDAxOjM5OjA1IDIwMDENCisr
KyBpZl9kYy5jCVRodSBPY3QgMTEgMDE6Mzk6MzAgMjAwMQ0KQEAgLTE5Myw4
ICsxOTMsOCBAQA0KIHN0YXRpYyBpbnQgZGNfY29hbAkJX19QKChzdHJ1Y3Qg
ZGNfc29mdGMgKiwgc3RydWN0IG1idWYgKiopKTsNCiBzdGF0aWMgdm9pZCBk
Y19wbmljX3J4X2J1Z193YXIJX19QKChzdHJ1Y3QgZGNfc29mdGMgKiwgaW50
KSk7DQogc3RhdGljIGludCBkY19yeF9yZXN5bmMJCV9fUCgoc3RydWN0IGRj
X3NvZnRjICopKTsNCi1zdGF0aWMgdm9pZCBkY19yeGVvZgkJX19QKChzdHJ1
Y3QgZGNfc29mdGMgKikpOw0KLXN0YXRpYyB2b2lkIGRjX3R4ZW9mCQlfX1Ao
KHN0cnVjdCBkY19zb2Z0YyAqKSk7DQorc3RhdGljIGludCBkY19yeGVvZiAg
ICAgICAgICAgX19QKChzdHJ1Y3QgZGNfc29mdGMgKikpOw0KK3N0YXRpYyBp
bnQgZGNfdHhlb2YgICAgICAgICAgIF9fUCgoc3RydWN0IGRjX3NvZnRjICop
KTsNCiBzdGF0aWMgdm9pZCBkY190aWNrCQlfX1AoKHZvaWQgKikpOw0KIHN0
YXRpYyB2b2lkIGRjX3R4X3VuZGVycnVuCV9fUCgoc3RydWN0IGRjX3NvZnRj
ICopKTsNCiBzdGF0aWMgdm9pZCBkY19pbnRyCQlfX1AoKHZvaWQgKikpOw0K
QEAgLTIzMDIsNyArMjMwMiw3IEBADQogICogQSBmcmFtZSBoYXMgYmVlbiB1
cGxvYWRlZDogcGFzcyB0aGUgcmVzdWx0aW5nIG1idWYgY2hhaW4gdXAgdG8N
CiAgKiB0aGUgaGlnaGVyIGxldmVsIHByb3RvY29scy4NCiAgKi8NCi1zdGF0
aWMgdm9pZCBkY19yeGVvZihzYykNCitzdGF0aWMgaW50IGRjX3J4ZW9mKHNj
KQ0KIAlzdHJ1Y3QgZGNfc29mdGMJCSpzYzsNCiB7DQogICAgICAgICBzdHJ1
Y3QgZXRoZXJfaGVhZGVyCSplaDsNCkBAIC0yMzExLDYgKzIzMTEsNyBAQA0K
IAlzdHJ1Y3QgZGNfZGVzYwkJKmN1cl9yeDsNCiAJaW50CQkJaSwgdG90YWxf
bGVuID0gMDsNCiAJdV9pbnQzMl90CQlyeHN0YXQ7DQorICAgICAgaW50ICAg
ICAgICAgICAgICAgICAgICAgY250ID0gMDsNCiANCiAJaWZwID0gJnNjLT5h
cnBjb20uYWNfaWY7DQogCWkgPSBzYy0+ZGNfY2RhdGEuZGNfcnhfcHJvZDsN
CkBAIC0yMzU1LDcgKzIzNTYsNyBAQA0KIAkJCQljb250aW51ZTsNCiAJCQl9
IGVsc2Ugew0KIAkJCQlkY19pbml0KHNjKTsNCi0JCQkJcmV0dXJuOw0KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybihjbnQpOw0KIAkJ
CX0NCiAJCX0NCiANCkBAIC0yMzc5LDYgKzIzODAsNyBAQA0KIAkJLyogUmVt
b3ZlIGhlYWRlciBmcm9tIG1idWYgYW5kIHBhc3MgaXQgb24uICovDQogCQlt
X2FkaihtLCBzaXplb2Yoc3RydWN0IGV0aGVyX2hlYWRlcikpOw0KIAkJZXRo
ZXJfaW5wdXQoaWZwLCBlaCwgbSk7DQorICAgICAgICAgICAgICBjbnQrKzsN
CiAJfQ0KIA0KIAlzYy0+ZGNfY2RhdGEuZGNfcnhfcHJvZCA9IGk7DQpAQCAt
MjM4OSwxMiArMjM5MSwxMyBAQA0KICAqIHRoZSBsaXN0IGJ1ZmZlcnMuDQog
ICovDQogDQotc3RhdGljIHZvaWQgZGNfdHhlb2Yoc2MpDQorc3RhdGljIGlu
dCBkY190eGVvZihzYykNCiAJc3RydWN0IGRjX3NvZnRjCQkqc2M7DQogew0K
IAlzdHJ1Y3QgZGNfZGVzYwkJKmN1cl90eCA9IE5VTEw7DQogCXN0cnVjdCBp
Zm5ldAkJKmlmcDsNCiAJaW50CQkJaWR4Ow0KKyAgICAgIGludCAgICAgICAg
ICAgICAgICAgICAgIGNudCA9IDA7DQogDQogCWlmcCA9ICZzYy0+YXJwY29t
LmFjX2lmOw0KIA0KQEAgLTI0NTIsNyArMjQ1NSw3IEBADQogCQkJCWlmcC0+
aWZfY29sbGlzaW9ucysrOw0KIAkJCWlmICghKHR4c3RhdCAmIERDX1RYU1RB
VF9VTkRFUlJVTikpIHsNCiAJCQkJZGNfaW5pdChzYyk7DQotCQkJCXJldHVy
bjsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4oY250
KTsNCiAJCQl9DQogCQl9DQogDQpAQCAtMjQ2NiwxMyArMjQ2OSwxNCBAQA0K
IA0KIAkJc2MtPmRjX2NkYXRhLmRjX3R4X2NudC0tOw0KIAkJRENfSU5DKGlk
eCwgRENfVFhfTElTVF9DTlQpOw0KKyAgICAgICAgICAgICAgY250Kys7DQog
CX0NCiANCiAJc2MtPmRjX2NkYXRhLmRjX3R4X2NvbnMgPSBpZHg7DQogCWlm
IChjdXJfdHggIT0gTlVMTCkNCiAJCWlmcC0+aWZfZmxhZ3MgJj0gfklGRl9P
QUNUSVZFOw0KIA0KLQlyZXR1cm47DQorICAgICAgcmV0dXJuKGNudCk7DQog
fQ0KIA0KIHN0YXRpYyB2b2lkIGRjX3RpY2soeHNjKQ0KQEAgLTI2MTIsNiAr
MjYxNiw3IEBADQogCXN0cnVjdCBkY19zb2Z0YwkJKnNjOw0KIAlzdHJ1Y3Qg
aWZuZXQJCSppZnA7DQogCXVfaW50MzJfdAkJc3RhdHVzOw0KKyAgICAgIGlu
dCAgICAgICAgICAgICAgICAgICAgIGNudCA9IDA7DQogDQogCXNjID0gYXJn
Ow0KIA0KQEAgLTI2MzAsNiArMjYzNSw3IEBADQogCS8qIERpc2FibGUgaW50
ZXJydXB0cy4gKi8NCiAJQ1NSX1dSSVRFXzQoc2MsIERDX0lNUiwgMHgwMDAw
MDAwMCk7DQogDQorYWdhaW46DQogCXdoaWxlKChzdGF0dXMgPSBDU1JfUkVB
RF80KHNjLCBEQ19JU1IpKSAmIERDX0lOVFJTKSB7DQogDQogCQlDU1JfV1JJ
VEVfNChzYywgRENfSVNSLCBzdGF0dXMpOw0KQEAgLTI2MzcsMTggKzI2NDMs
MTggQEANCiAJCWlmIChzdGF0dXMgJiBEQ19JU1JfUlhfT0spIHsNCiAJCQlp
bnQJCWN1cnBrdHM7DQogCQkJY3VycGt0cyA9IGlmcC0+aWZfaXBhY2tldHM7
DQotCQkJZGNfcnhlb2Yoc2MpOw0KKyAgICAgICAgICAgICAgICAgICAgICBj
bnQgKz0gZGNfcnhlb2Yoc2MpOw0KIAkJCWlmIChjdXJwa3RzID09IGlmcC0+
aWZfaXBhY2tldHMpIHsNCiAJCQkJd2hpbGUoZGNfcnhfcmVzeW5jKHNjKSkN
Ci0JCQkJCWRjX3J4ZW9mKHNjKTsNCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNudCArPSBkY19yeGVvZihzYyk7DQogCQkJfQ0K
IAkJfQ0KIA0KIAkJaWYgKHN0YXR1cyAmIChEQ19JU1JfVFhfT0t8RENfSVNS
X1RYX05PQlVGKSkNCi0JCQlkY190eGVvZihzYyk7DQorICAgICAgICAgICAg
ICAgICAgICAgIGNudCArPSBkY190eGVvZihzYyk7DQogDQogCQlpZiAoc3Rh
dHVzICYgRENfSVNSX1RYX0lETEUpIHsNCi0JCQlkY190eGVvZihzYyk7DQor
ICAgICAgICAgICAgICAgICAgICAgIGNudCArPSBkY190eGVvZihzYyk7DQog
CQkJaWYgKHNjLT5kY19jZGF0YS5kY190eF9jbnQpIHsNCiAJCQkJRENfU0VU
QklUKHNjLCBEQ19ORVRDRkcsIERDX05FVENGR19UWF9PTik7DQogCQkJCUNT
Ul9XUklURV80KHNjLCBEQ19UWFNUQVJULCAweEZGRkZGRkZGKTsNCkBAIC0y
NjYyLDEwICsyNjY4LDEwIEBADQogCQkgICAgfHwgKHN0YXR1cyAmIERDX0lT
Ul9SWF9OT0JVRikpIHsNCiAJCQlpbnQJCWN1cnBrdHM7DQogCQkJY3VycGt0
cyA9IGlmcC0+aWZfaXBhY2tldHM7DQotCQkJZGNfcnhlb2Yoc2MpOw0KKyAg
ICAgICAgICAgICAgICAgICAgICBjbnQgKz0gZGNfcnhlb2Yoc2MpOw0KIAkJ
CWlmIChjdXJwa3RzID09IGlmcC0+aWZfaXBhY2tldHMpIHsNCiAJCQkJd2hp
bGUoZGNfcnhfcmVzeW5jKHNjKSkNCi0JCQkJCWRjX3J4ZW9mKHNjKTsNCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNudCArPSBk
Y19yeGVvZihzYyk7DQogCQkJfQ0KIAkJfQ0KIA0KQEAgLTI2NzMsNiArMjY3
OSwxMCBAQA0KIAkJCWRjX3Jlc2V0KHNjKTsNCiAJCQlkY19pbml0KHNjKTsN
CiAJCX0NCisgICAgICB9DQorICAgICAgaWYgKGNudCkgeyAgICAgIC8qIFhY
WCBsaW1pdCByZXBlYXRzPyAqLw0KKyAgICAgICAgICAgICAgY250ID0gMDsN
CisgICAgICAgICAgICAgIGdvdG8gYWdhaW47DQogCX0NCiANCiAJLyogUmUt
ZW5hYmxlIGludGVycnVwdHMuICovDQo=
--0-419118699-946703556=:4587--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000101045805.G4587-200000>