Friday, March 2, 2012

It's alive!

Since my last post, I have been overly busy with test automation, fixing bugs, learning python (able to debug a lot of code issues, still need to start my own code projects), etc.  It has been shear and utter chaos.

Part of this has been lab expansion.  I am now up to 8 Pandas online, plus additional hardware (some of which I can't comment on, but it is COOL!).  In preparation of arm servers, I am in the process of gathering data on power consumption while running tests.  This involves a really nice Fluke digital multi-meter with data acquisition.  To simplify testing, I am using a Panda as a basis, as the hardware is now well known, and I can easily put the meter in between the power supply and the panda. 

Wires, lots of wires.

This is a desk test with an old beagle that I currently don't use for testing.  Figured if I was going to fry a test board, make sure it isn't in use.

So, with the wiring working, the next was to run a semi-meaningful load test.  Since this is ultimately for server testing, I wrote up (with the help of others) a simple lamp stack test that installs apache2, php, and mysql, then loads & verifies mysql with a large amount of dummy data, which php will query from.  Once that is setup, the test runs apache bench for a few iterations before really clobbering it with siege.  It took some fine tuning to scale the test down to run under 1 hour (first try ran all weekend before I manually killed it - oops).  Below is the graph of the data from the power meter, starting from idle.


The first bunch of noise (0-600s) is  apt-get install lamp-server^ installing the packages, followed by a slight increase as the database is populated and verified.  The spike from 750-1100 is apache bench.  The rest is siege.  The system is a panda running headless with a 16G SSD on usb sata, powered by the panda.  Everything was run locally. 

Note:  This is not intended to be used for comparison, only a system I have available.  No other systems have been tested, and I'm not even sure the tests I ran can be considered valid given the setup.  But for those interested in how much power their cell phones will consume when acting as a lamp server, here you go.  Enjoy.

Not bad for a first run.  And fairly easy with a 2 wire power source.  Now for the fun part.  To do meaningful power benchmarking on any platform, you really need to be between the power supply and the platform.  Testing at the wall is near meaningless.  The kill-a-watt I have on the wall jack behind my rack cabinet shows I am only using ~5 amps, and that is with 4 low power systems running full time.  Another one on a Core2Duo open test system (just a motherboard, video card, and drives - no chassis) shows ~.45 amps between PS & wall when under test.  It drops insignificantly when idle.   So, to properly test, I need to sit between the power supply and the board.  Now, the trick is to not overload the 10A max load on the meter.  AC, no problem, but my 450W atx power supply says  it will handle 22 amps on 3.3v, 15 amps on 5V, and 30 amps combined on 12V.  Time to break out a cheap power meter (in case of smoke).

This is going to be...{fun, expensive, deadly, ____}.

We will see.