Need Ideas for Building Headless Backend

More general comments, including Off Topic.

Moderator: Pablo

Post Reply
phat_b
Member
Posts: 11
Joined: Wed Feb 03, 2010 8:37 pm

Need Ideas for Building Headless Backend

Post by phat_b »

I realize the master backend role isn't something MiniMyth can perform, but we all need one so I thought this would be a good place to ask for advice on the subject since embedded linux enthusiasts generally think and do things somewhat differently. Just for background, I'm a long time fan of OpenWrt and enjoy building embedded linux appliances for my constantly evolving home automation 'project' (my wife uses a different noun to describe it). My primary objective here is to build a master backend for two atsc tuners and hosting storage of mpeg4 dvd rips for at most 6 MiniMyth frontends. I would also like to expose a generic samba share as well as a mailserver such as sendmail or postfix for four or five mailboxes on my internal lan.

I am a long time fan of Slackware, but recently I've found myself running various forms of Ubuntu and appreciate the ease with which updates and packages can be installed on it. My lazy side especially appreciates how simple it is to setup a backend with nothing more than a Mythbuntu ISO. I do however feel the lastest desktop distro is somewhat bloated for use in a server / headless appliance role, and at times have found myself wishing I'd stuck with Slackware for it's utilitarian simplicity. So I guess my primary question is what distro should I go with? Installing from aptitude on Ubuntu server looks like the candidate at the moment, but I'd love to hear other opinions / experiences.

My primary concerns for this box will be reliability and low power consumption. I fully intend to set it up once, and never need to plug a keyboard or monitor into it again unless I'm replacing / upgrading hardware. Because of this I'm somewhat opposed to the constant barrage of updates with Ubuntu - they totally kill my uptime. :|

Along the lines of a headless server, another thing I'm researching is the possibility of a configure script to take the place of the mythtv-setup gui. I haven't found anyone else addressing this in the main myth discussion forum or on the mailing list, but I'd love to hear of any experiences or ideas on this.

My current hardware platform consists of an old Intel D865 mainboard with a 2.8ghz p4. But I'm open to suggestions on a power conscious motherboard + cpu setup. Unfortunately I would like to have a minimum of three 32 bit PCI slots for my atsc cards and a hauppauge pvr-250 so an atom based board seems unlikely (I've not seen such a board with more than one PCI slot).
tsjoender
Contributor
Posts: 87
Joined: Mon Nov 05, 2007 9:45 am
Location: Friesland, The Netherlands

Re: Need Ideas for Building Headless Backend

Post by tsjoender »

Little more than a year ago I also had a 2.8GHz P4 based backend taking up 110W idle. I have replaced that with a Sempron LE-1250 based system and reduced the power consumption to 37W idle.

For the real power efficient systems mATX based systems are often recommended, but are limited in the number of PCI slots offered. So part of the upgrade strategy may be considering a different tuner setup, or be prepared to have a little less efficient system offering more PCI slots.

My backend currently consists of:
  • Asrock Alive NF7G-FullHD 3.0 (it has the nForce 7050 chipset which is a popular choice for energy efficient PCs)
  • AMD Sempron LE-1250 (not much processing power is required in a backend system IMHO. The cpupowerd program throttles down the CPU and undervolts when idle (in combination with CnQ) and throttles back up when processing power is needed. The use of cpupowerd made a big difference (about 20%) for me)
  • 1 GB of RAM Aeneon (single sided, saves another watt)
  • Two WD GP 1 TB disks (one is powered down and only spins up at night when doing a rsnapshot backup job. To me it seems the single disk offers plenty IO for multiple recordings. Unfortunately multirec doesn't work reliably in my setup, so with that enabled, disk IO might be an issue)
  • Two Hauppauge Nova DVB-S tuner cards
  • Enermax PRO82+ 385W PSU (the PSU can make a huge difference in the total efficiency of the system. I have received a Pico PSU this week that I want to try as well. Might save another few watts)
The OS installed is CentOS 5 which I installed without a full X environment. When running mythtv-setup I redirect the DISPLAY to another PC. Maybe this helps get inspired. Perhaps it's best to start with a wattmeter. It is really interesting to swap components round and see what that does to the powerdraw of a system and get a feel for what can be gained.
phat_b
Member
Posts: 11
Joined: Wed Feb 03, 2010 8:37 pm

Re: Need Ideas for Building Headless Backend

Post by phat_b »

tsjoender wrote:Little more than a year ago I also had a 2.8GHz P4 based backend taking up 110W idle.
Ouch. On my current setup I'm seeing around 85w at idle with a similar part count to your new system. That piques my interest on the subject of power supplies. I've been on the fence over using an older nForce2 board that I have, because it lacks gigabit ethernet and would only save me about 15 watts. But I don't recall if I was comparing the two boards with the same PS.
tsjoender wrote:The cpupowerd program throttles down the CPU and undervolts when idle (in combination with CnQ) and throttles back up when processing power is needed. The use of cpupowerd made a big difference (about 20%) for me.
What was your control for the 20% estimate (i.e. vs no cpu frequency scaling, vs in-kernel scaling w/ondemand governor module, etc.)?
tsjoender wrote:To me it seems the single disk offers plenty IO for multiple recordings.
My current setup is a single 250gb Seagate laptop sata drive, and that seems to provide adequate throughput for two simultaneous HD recordings.

Thanks for the ideas, you mainly confirmed the notion that I need to invest some $$$ in a new AM2/AM2+ board. I'll have to look into CentOS also.
tsjoender
Contributor
Posts: 87
Joined: Mon Nov 05, 2007 9:45 am
Location: Friesland, The Netherlands

Re: Need Ideas for Building Headless Backend

Post by tsjoender »

That 20% estimate is not very scientific, just a crude guess based on the measurements I did during the experiments of various components and configurations. I haven't tried many different means to do frequency scaling. When it comes to powersaving the real gain is in undervolting, more than in frequency throttling. At the time I built the system cpupowerd was the (only?) tool that allowed me to dynamically alter the CPU's voltage. I could also set it in the BIOS, but then the CPU wouldn't get enough juice during boottime and never start up properly.
phat_b
Member
Posts: 11
Joined: Wed Feb 03, 2010 8:37 pm

Re: Need Ideas for Building Headless Backend

Post by phat_b »

Just wanted to post back a thanks for the suggestions. I finally broke down and purchased a new AM2/2+/3 motherboard and the requisite pieces to get me functional. I managed to get a bad piece of memory so I'll have to wait for Kingston's RMA dept to come through on that before I can get it in place, but in the mean time I found a few other items that may be of interest.

First, I did some measurements using different ATX power supplies. Since my only means of measuring consumption is a Kill-A-Watt which rounds to the nearest watt, I thought I would be estimating differences based on how frequently the display fluctuated between adjacent numbers. That was not the case at all. *** Disclaimer *** this test was not performed scientifically, and information here may be completely inaccurate. Also, since I lack the equipment to properly measure input versus output, the results do not indicate the overall efficiency of the supplies tested. My criteria for selecting power supplies to test was based on: whatever spares I had lying around...

Test hardware:
Kill-A-Watt Model P4400
Asus M2A-VM HDMI
Sempron LE-1300
Hynix DDR2 533mhz 512MB
Seagate Momentus 5400.6

Method: recorded power consumption after powernow-k8 driver throttles CPU to minimum speed / voltage, then again after 20 minutes. Then recorded standby power consumption after shutdown, powered back up and recorded +3.3v, +5v and +12v rail voltages from BIOS monitoring utility.

Code: Select all

Sparkle FSP300-60PLN
	standby: 1w
	@ 1 min: 45W
	@ 20 min: 45w
  Voltages:
	3.37
	4.94
	11.96

FSP Group, Inc. FSP200-60ATV
	Standby: 3w
	@ 1 min: 42w
	@ 20 min: 42W
  Voltages:
	3.36
	4.91
	11.96

Ultra ULT-VX500
	Standby: 5w
	@ 1 min: 41W
	@ 20 min: 41w
  Voltages:
	3.44
	4.99
	12.09

Mitac X-200/12V
	Standby: 3w
	@ 1 min: 37w
	@ 20 min: 36w
  Voltages:
	3.31
	5.01
	11.71
I was shocked by the discrepancies between the four. One thing that really stood out is that the supplies that caused the most consumption demonstrated the highest rail voltages, indicating that lower voltage supplies may be desirable here (Ohm's law at work...). Needless to say, I'll be using the Mitac, and I'll be looking for a source for more of these. I very nearly gave this to the recycler because it had some swollen caps that needed replacement.

Now I'm off to patch the powernow-k8 module with the PHC fixes that allow user selectable undervolting. :-\ Unfortunately the folks maintaining the kernel for Ubuntu built this driver into the kernel and removed any means to patch the module for customizing voltages, so the user is stuck with the frequency / voltage combination the motherboard / cpu tells the driver to use. This also foils any attempt to use userspace undervolting utilities. I suspect there is quite a lot of power to be saved here, as simply lowering the cpu core voltage down to .950v (the lowest the chip would boot at) from the default 1.1v resulted in a solid 5 watt savings at the lowest core frequency (1ghz).

I'm also hoping to be able to underclock the onboard GPU...
Post Reply