64-bit Green PC

Hey folks!

A few weeks ago, I built myself a brand new machine. I wanted something 64bit and low powered that could act as a VMware or other virtualization server if necessary. I also wanted it relatively cheap.

So between Newegg, Geeks.com, ZipZoomFly and Amazon, I did just that. My primary focus was a "Green PC". I didn't want to sacrifice power (cpu operations) for power (electricity). I also wanted it to be relatively cheap ($500-600). I identified the two of the biggest power suckers in just about any mainstream pc:

- the CPU
- the PSU (in efficency)

I started with an AMD 64 x2 BE-2350. This CPU was on sale for less than 100 bucks and advertised 45w of power usage ... which is fantastic! Many high powered CPUs these days use roughly 100w of electricity, easily.

My other major piece was the PSU. Most power supplies are about 60-75% efficient, meaning much of the juice you're pumping into your PC is being used to heat your room. Aantec's "EarthWatts" PSU's have a rating of 85% or higher. Not only do you save that electricity in the form of heat, but also running the fans to cool down the system.

Once I had those two major parts, I continued. I got a deal on 2gb of DDR2 800 ram, which operates at 1.9v ... which is low by todays standards. The motherboard I chose was nothing special, an ECS A770M-A, the main reason I chose it because it supports PCI-E x16 and up to 32gb of memory.

The video card was also not the latest and greatest. I'm a big fan of Nvidia, and I went with their 6600 series card. (My last card was a 5500). This card supports dual monitors, has 512m of ddr video memory, and probably runs cooler (and with less power) than a top of the line 8800 or 9000 series. Also, Geeks.com had it for about $50!

Next, my old machine had three IDE hard drives and two DVD drives, one a burner and one just a reader. Can you say power consumption? I consolidated the 320gb of drivespace I had with my old machine with one 500 gb SATA drive. I also went with one DVD+/-RW drive instead of two.

Not counting the dual LCD monitors, my new setup uses about *half* the electricity of my old one. I have one of those Kill-a-Watt voltage/wattage monitors. And I took the readings before my last tip.

I installed Slamd64, a 64-bit version of Linux, but could have very well used Ubuntu Server or Workstation. One thing Ubuntu does "out of the box" was enable CPU frequency scaling. I, too, wanted to take advantage of this.

I made sure to enable the loading of AMD's powernow-k8 module (in /etc/rc.d/rc.modules) as well as the "ondemand" cpufreq governor. (Slamd64 has the "userspace" governor enabled by default compiled into the kernel). The main difference between these two, the ondemand gives you power when you need it, while the userspace lets you choose what specific power levels you want.

Finally, these aliases in root's ~/.bash_profile topped it off:

alias hpwr='echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor && echo 2100000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed'
alias lpwr='echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor'

My available frequencies were 1000mhz/cpu core on the low end and 2100 on the high end. While my machine idles (I leave it on all the time) it doesn't soak a lot of power unless I access it from remote and tell it to. If I'm working on something important, I can temporarily type "hpwr" and perform my task, then back to "lpwr" when I'm done!

I'll have to take idle measurements with the Kill-a-Watt again to see how low it really goes. Or, maybe I'll just wait to see if I get a nice surprise in my next power bill!


FredR's picture

I probably entitled it a "64 bit Dual Core Green PC". I'm considering adding another 2 gb of ram, as it was a fantastic price. I didn't mention some of the unglamorous pieces of the machine like the case, and I'm using my other external peripherals such as my mouse and keyboard. I received my DVD+RW in the mail but the vendor shipped me the wrong product, so I'm waiting for that to come back.

On the virtualization front, I've moved from VMware player, to Server 1.0.5, then onto Server 2.0 Beta 2. This is a really nice product, and it looks a lot like VMWare's flagship product, ESX.

I cannot compile qemu, as it will not compile with gcc 4. I'm running the newest -current of Slamd64 , but the changelog has some promising news: KVM is included in this release! Yes, I'll be able to take advantage of the "svm" flag in my AMD chip! I may find myself using KVM more often than I do VMWare.

Life with x86_64 is fun and interesting, but the 32bit nspluginwrapper is picky. My ultimate goal was to run 32bit guest OS's anyhow, and the plugins will not be a problem.

Lastly, I'm looking for 3D hardware acceleration inside guest machines. I did achieve this on my old 32bit host, with VMWare Player. Player would not work on my new x86_64 machine, so I went with Server, and the options one puts in the text file .vmx to enable hardware accelerated 3d must be different for Beta 2.

If KVM is as transparent as it should be, guest machines will have a more native access to the hardware ... meaning 3D acceleration should be native as well! (Or so I hope).

-- FLR or flrichar is a superfan of Linux Journal, and goofs around in the LJ IRC Channel

Update 2

FredR's picture

Since then I did add the additional 2GB of ram, and the machine is working fine. I've also ditched VMWare Server 2.0 Beta and use just plain VMWare Player. I've also started using VirtualBox almost exclusively. This gives me three fantastic options for virtualization: Sun's VirtualBox, VMWare Player, or KVM, the Linux kernel's virtualization offering. Some of my guest machines I run and their respective VM software, in the order I use them, most frequent first:

Virtual Box

  • Ubuntu Workstation, Hardy Heron
  • CentOS 5.2
  • Arch Linux
  • OpenSolaris


  • Fedora 9
  • Fluxbuntu
  • Slackware 10.2

VMWare Player

  • WinXP
  • Windows Vista

I think it's also important to note, although playing with Virtualization is fun, I wouldn't recommend running different VM software at the same time. I don't believe there's a locking mechanism yet for the vm flags in the processor, so although two vbox (VirtualBox) machines running side by side may be aware of one another, I wouldn't recommend running them along side KVM or VMWare. I believe in the future, I may settle on one offering, say KVM when it matures or maybe even VirtualBox. Also, with the qemu tools from KVM, it's possible to convert guest VM disk images between the major players.

I also (just recently) started a new job in which I work from home most of the time. I realized the two LCD monitors (19" and 17") were no longer really working well for me, so I consolidated and bought a new 22" lcd monitor. This is also more towards the Green PC goal.

All in all it's been working fantastic.

-- FLR or flrichar is a superfan of Linux Journal, and goofs around in the LJ IRC Channel

Geek Guide
The DevOps Toolbox

Tools and Technologies for Scale and Reliability
by Linux Journal Editor Bill Childers

Get your free copy today

Sponsored by IBM

Upcoming Webinar
8 Signs You're Beyond Cron

Scheduling Crontabs With an Enterprise Scheduler
11am CDT, April 29th
Moderated by Linux Journal Contributor Mike Diehl

Sign up now

Sponsored by Skybot