Date: Wed, 3 Apr 2002 11:16:07 -0500 (EST) From: Robert Watson <rwatson@FreeBSD.org> To: Stefan Saroiu <tzoompy@cs.washington.edu> Cc: Terry Lambert <tlambert2@mindspring.com>, freebsd-smp@FreeBSD.org Subject: Re: Interrupt Handlers and Multiple CPUs Message-ID: <Pine.NEB.3.96L.1020403111230.47067B-100000@fledge.watson.org> In-Reply-To: <20020402174143.B29152-100000@magnesium.cs.washington.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 2 Apr 2002, Stefan Saroiu wrote: > The application still gets 20% of the CPU which is quite good actually. > Although I'm not familiar with Druschel's work, I'm not sure whether > better scheduling will help me here. > > I've been toying with the idea to change the driver to raise interrupts > only once every 100 packets or something like that. Currently it is 1 > interrupt per 1 packet. Ouch. No wonder you're having problems. You definitely want to implement one of coalesced interrupt delivery or polled device access. In theory, we have both in 4.x and 5.x, but support for coalesced delivery is on a per-card basis. 5.x will allow you do to the kinds of things you want (eventually) once the network stack is fine-grained enough, but it sounds like the big problem is the driver model. I believe fxp and em drivers support this, and might be a good model to look at. You might want to consider posting to freebsd-net for pointers in this space. Robert N M Watson FreeBSD Core Team, TrustedBSD Project robert@fledge.watson.org NAI Labs, Safeport Network Services To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.NEB.3.96L.1020403111230.47067B-100000>