On Wed, 10 Oct 2007 00:11:17 +0530, Kok, Auke <[EMAIL PROTECTED]> wrote:

Lennart Sorensen wrote:
On Mon, Oct 08, 2007 at 03:31:51PM -0700, Kok, Auke wrote:
you most certainly want to do this in userspace I think.

One of the biggest problems is that link negotiation can take a significant amount of time, well over several seconds (1 to 3 seconds typical) with gigabit, and having your ethernet connection go offline for 3 seconds may not be the desired
effect for when you want to get more bandwidth in the first place.

However, when a laptop is in battery mode, switching down from gigabit to 100mbit makes a lot more sense, so this is something I would recommend. This can be as easy as changing the advertisement mask of the interface and renegotiating the
link. Userspace could handle that very easily.

Now if you were trying to transfer a lot of data to the laptop, would it
be more power efficient to do it at gigabit speeds so you can finish
sooner and shut down the machine entirely, or to slow to 100mbit and
take longer to do it, and hence spend more time powering the cpu and
ram?

my suspicion is that the cost of switching is much higher than what you would consume running at 100mbit, even if the amount of data is quite large. going
offline to renegotiate the link would already cost you 3W typically.

I definately think that userspace is the right field to solve this problem: let the users decide how to use the available power on their sytems through a decent power profile tool (perhaps gnome-power-manager or something like that). This way
the user can choose.

Auke
-

Perhaps interrupt moderation could be of help here (say - switch to lesser interrupts per unit of time when running on battery), which I find that the e1000 driver doesn't employ in the kernel presently. (For interrupt moderation, refer: http://download.intel.com/design/network/applnots/ap450.pdf.)

Without the side-effect of experiencing a link-flap when switching to a lower-speed (with its toll in terms of down-time for auto-negotiation, STP, etc), the Interrupt Moderation Algorithm dynamically adjusts the number of interrupts based on traffic - and presumably consume less power. For an "Optimise for Power" kind of profile - the driver can be loaded with a higher throttle rate during boot-time.

Thanks,
K.Prasad
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to