Linux tip: Save Power With Gigabit Ethernet By Using Lower Speed

This is a reader contributed article.

These days almost all server / laptop / desktop system has a gigabit Ethernet card (NIC) pre installed. Most servers are directly connected to internet using 100Mbps connections. You can save real power on your Linux server or desktop by operating at 100Mbps Ethernet speed. For example 1 gigabit link is going to consume more power than the power used at 100Mbps speed. Also note that not all systems actually use gigabit speed. For example my desktop system only used for browsing or chatting purpose or Linux web server used to display just static web pages. Now just calculate power consumption for 100 servers or 1000 desktop systems. Bottom line use Gigabit Ethernet speeds only when needed. Did you know - you can save 2 watts or more per Linux/UNIX/Windows server/desktop by just setting a correct speed :)

See current Ethernet card speed

Use ethtool comment to display current speed:
ethtool eth0 | grep -i speed

Set new speed and save power

Following command will set card speed to 100Mbps:
ethtool -s eth0 autoneg off speed 100

=> For more information see ethtool command and network interface speed, duplex . auto negotiate settings on Linux

About the author: Rocky Jr., is an engineer with VSNL - a leading ISP / global telecom company in India and a good friend of nixCraft.

Want to read Linux tips and tricks, but don't have time to check our blog everyday? Subscribe to our daily email newsletter to make sure you don't miss a single tip/tricks. Subscribe to our weekly newsletter here!

{ 9 comments… read them below or add one }

1 VonSkippy 09.21.07 at 9:02 pm

Where did you get the 2 Watt per system savings figure? I tested several of my servers, mostly Supermicro MB’s or IBM’s (using the Kill-A-Watt realtime power monitor) and saw almost no change (>0.5 watt) when switching between 1000 and 100 ethernet speeds.

So if I had 1000’s of servers it might be worth the effort to make the change – it’s certainly not worth it for 47 servers.

2 Jacky 09.22.07 at 6:51 pm

So if I had 1000’s of servers it might be worth the effort to make the change – it’s certainly not worth it for 47 servers

This is exactly the type of thinking we have too much of on this world, simple minded.
0.5W times every 1000Mbit computer out there is A LOT of WATTS saved every day. Get of your lazy ass TODAY, save some power and allow you children to enjoy a better world 500 years from now … it’s about the big picture…..

3 DasIT 09.24.07 at 6:53 pm

Efficiency is not just a measure of total wattage. It is a measure of performance per watt, be it in CPU cycles or data rates. If I save 1 watt by lowering my link speed to 100Mbps, it now takes me nearly an order of magnitude longer (not exactly an order of magnitude, due to protocol ineffeciencies, but close anyway) to copy the same amount of data of over the same data link that would normally be transmitting at 1Gbps, how is that a savings? It’s actually costing me more time and therefore more wattage over time to copy the same amount of data. If anything, people should go out and install 1Gbps or even 10Gbps on all of their equipment to save as much as they can!

I sincerely appreciate that people are trying to save energy, but energy savings at the cost of output is a false savings. It’s not about being lazy or impatient, its about making the most of your investments, both in grid power and man power.

4 Neil 10.05.07 at 5:03 pm

I have no opinion on the power saving, but a new GigE switch that we got didn’t want to play nice with a bunch of our GigE-capable boxes. I was trying to figure out how to tell the NICs to run at 100Mbps, and this article showed me how. Much appreciated.

5 Babbit 01.12.08 at 11:27 pm

All grass is green.
All cows eat grass.
Therefore, all cows are green.

6 No no no 02.20.08 at 8:52 pm

No no no babbit.

All grass is green.
All cows eat grass.
Therefore, all cows eat *green* grass.

You’re neither a farmer or an analyst are you?

7 me 02.26.08 at 5:32 pm

how about slower speeds yet, will they save more power

8 me 02.26.08 at 5:32 pm

how about slower speeds yet like 10 Mbs

9 Mark 10.20.08 at 4:38 am

Rather than switching off autonegotation, which can cause problems with mismatched settings, it is better just to limit what your network card announces it is capable of. The other end will autonegotiate up to the fast speed / duplex combination that your end announces. So if you only announce 10 Mbps / Half Duplex, that’s all the other end will use e.g.

# ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbag
Wake-on: d
Current message level: 0×00000001 (1)
Link detected: yes
#

# ethtool -s eth0 advertise 0×001
# ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half
Advertised auto-negotiation: Yes
Speed: 10Mb/s
Duplex: Half
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbag
Wake-on: d
Current message level: 0×00000001 (1)
Link detected: yes
#

Leave a Comment

You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Tagged as: , , , , , , ,

Previous post: First ever GPL Violation Lawsuit filed

Next post: Check BIND – DNS Server configuration file for errors with named-checkconf tools