Underclocking your CPU in FreeBSD 8

By nick | Tech Support, Uncategorized
12 Jan 2010

http://placid.homeunix.net/~phillip/freebsd/logo-full.png

Here’s a quick note for those who may want to underclock their CPU under FreeBSD.

You’re probably wondering why you’d want to underclock your CPU, after all isn’t it all about making things go faster?

Here’s a few advantages:

  • Reduced heat generation
  • Reduced electrical power consumption
  • Longer hardware lifespan
  • Increased stability
  • Increased battery life
  • Reduced noise from cooling fans

I wanted to underclock my home server to save power and heat.  The box is fitted with a AMD Athlon CPU along with their stock heatsink/fan combo, know for their suckage.  Buying and fitting a new heatsink/fan is too much effort for a 3GHz box that uses a fraction of it’s processing power to serve files on my LAN.

First we need to find the available cpu frequencies:

sysctl -a | grep “freq_levels”

dev.cpu.0.freq_levels: 2189/89000 1990/84600 1791/70900 995/37600

You’ll then see a few available frequencies, you can select one like this:

sysctl dev.cpu.0.freq=995

Add the line above to your /etc/sysctl.conf and it’ll take effect every time you boot:

echo dev.cpu.0.freq=995 >> /etc/sysctl.conf

And there you have it, the lazy and of course “green” way of reducing the heat output from your CPU.

On a side note, don’t forget to download your free ram upgrdae, limited supplies!

http://www.downloadmoreram.com/

Tags: , ,

4 Comments

  1. MikeG says:

    this is awesome thanks for the info – thumbs up!

  2. Gove says:

    I couldn’t agree with you more, anyway l love your site layout. Is nice and clean.

  3. soulreaver1 says:

    Hi,

    There is a mistake in command: “echo sysctl dev.cpu.0.freq=995 >> /etc/sysctl.conf”. It should be: “echo dev.cpu.0.freq=995 >> /etc/sysctl.conf” instead. I’ve tested it on FreeBSD 8.2. Your command makes a warning in /var/log/messages : “cat /var/log/messages | grep sysctl
    Nov 24 22:01:19 theone root: /etc/rc.d/sysctl: WARNING: sysctl dev.cpu.0.freq: does not exist.” and do not restricts CPU frequency.

Leave a Reply