From owner-freebsd-current Thu Oct 11 23:30:55 2001 Delivered-To: freebsd-current@freebsd.org Received: from patrocles.silby.com (barn065-193.resnet.wisc.edu [146.151.65.193]) by hub.freebsd.org (Postfix) with ESMTP id 037ED37B408 for ; Thu, 11 Oct 2001 23:30:46 -0700 (PDT) Received: from localhost (silby@localhost) by patrocles.silby.com (8.11.6/8.11.6) with ESMTP id e015E5804688 for ; Sat, 1 Jan 2000 05:14:10 GMT (envelope-from silby@silby.com) X-Authentication-Warning: patrocles.silby.com: silby owned process doing -bs Date: Sat, 1 Jan 2000 05:14:05 +0000 (GMT) From: Mike Silbersack To: Subject: Some interrupt coalescing tests Message-ID: <20000101045805.G4587-200000@patrocles.silby.com> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-419118699-946703556=:4587" Content-ID: <20000101051245.V4587@patrocles.silby.com> Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG 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