Re: gigabit ethernet power consumption

From: Kok, Auke
Date: Thu Oct 11 2007 - 11:34:11 EST


Mark Gross wrote:
> On Tue, Oct 09, 2007 at 11:41:17AM -0700, Kok, Auke 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,
> I was wondering if we could use PM-QOS to have the driver drop to the
> 100Mb speed, when requests for bandwidth and latency are not in effect?

sure, that would probably work just fine. Technically this is not that hard anyway

I suppose that HAL integration is lacking a bit and missing ethtool ioctl code for
this which would be another solution - and would work without any driver changes.

Auke
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/