Archive for July, 2009

Building a high-performance, energy efficient router

Modern home routers are getting progressively crappier as manufactures include less ram and flash in their devices to reduce cost. In SLO, I live in a house with 5 people, 4 of us are computer science (csc/cpe) majors. What this amounts to is quite a bit of load on our network and a home router can only handle so much. Torrenting, streaming YouTube, streaming Hulu, streaming pandora, last.fm, uploading photos to flickr, downloading linux isos and patches, etc… that adds up to quite a bit! We quickly realized that the puny linksys we started off with failed to handle the traffic… the quick solution to that was to get ddwrt. Since the linksys we had didn’t have enough ram to support a decent version of ddwrt, I bought an Asus WL500W router which featured 32 ram/8 flash allowing us to install the mega edition of ddwrt. Unfortunately, possibly due to some compatibility issues, heat, emi or whatever, the router kept getting bricked (we had to RMA it twice)… so we eventually abandoned this approach and tried virtualizing Untangled. Which is actually a really cool routing/gateway appliance. The only issue with it was that it was really processor bound in a VM. Untangled runs on Java and requires a TON of resources. While it performed well and had a lot of great features, Untangled was simply too beefy for us to run in a VM and lacked some routing features which would have been nice (considering it’s main propose is to be a network gateway).

So, after more research I came across Vyatta as a solution for our routing. It is an open source/open hardware routing appliance that runs on x86 hardware. I mentioned in a previous post that we’ve had issues with high electric bills at our house in the past so I’m going to rule out the option of running this on a virtualized server (because running that machine 24/7 would be too expensive). The solution then would be to use a low-power pc. For this project, I found a VIA mobo that apparently runs with 9w according to this site. That is provided the chip is running at 800Mhz, but for routing, I shouldn’t need much more. I’d use a CF card for disk which would consume a lot less power than a hard drive which has moving parts (motors spinning, etc) so hopefully the power consumed there is negligible (need to verify).

Cost
$130 – mobo/cpu
$10 – 1gb ram
$30 – psu
$30 – cf -> sata adaptor
$20 – cf card

Total: $220

,

2 Comments

On a power budget and building a file server

An issue our house encountered last year was high electricity bills. Among other things, a major contributing factor was probably the servers we all ran. While an easy solution to that problem is just shutting them off, it is rather inconvenient to have to boot a fileserver or an apps server everytime we need them, and in addition to shut them down when we’re done with them.

Perhaps the major issue is that these servers, even while idling consume up to 110W (need to check this number) and even more while under load.

Thus, to mitigate power usage, I plan to replace my server with energy-efficient hardware specifically set up to be a file server. (Noting that my current setup is a VM server which hosts my fileserver in a vm. This setup requires more computing power because of the overhead of running the vm and the lack of hardware control from the vm makes it difficult to implement effective power management schemes).

I’m currently looking at this Atom-based board:
ZOTAC IONITX-C-U Intel Atom N230 Mini ITX ION Platform Motherboard/CPU Combo with 90W PSU – Retail
(http://www.newegg.com/Product/Product.aspx?Item=N82E16813500028)

I choose this board because it is the only Atom-based board I could find with 4 sata ports (3x internal + 1x eSata). It also has a mini pcie port which I could get a solid state drive for.

Based on this test (for a similar model) consumes 25w (idle) and 35w (load). Considering that the Atom processor’s specifications claim that it only consumes 4w, the other 21w presumably comes from the chipset. This board seems like it is a htpc board with its fancy gfx chipset and what not so I’m thinking that if I can turn off all these features, it should lower the power consumption of the board.

The next item then is the actual hard drives. Each drive hopefully consumes about 7W idle and 12W load (Based on averages of data found here).I’m considering doing a 3-disk raid-z (on zfs) to start. So 3 times those numbers.

Now hopefully I’ll also be able to optimize power here even further by spinning down my drives while they’re idle. It seems that I can use the sg3_utils to accomplish this. I’ll assume that the drives when spundown will still consume 1W.

Based on these assumptions (to get a general idea of what I’ll be working with):

Load: 35W + (3 x 12W) = 71W
Idle: 25W + (3 x 7W) = 45W
Idle+Spindown: 25W + (3 x 1W) = 28W

Note that these numbers are completely based on research and assumptions — I have not actually performed tests.

In terms of cost, what I’m looking at is:
$160 – mobo/cpu/psu
$89 – 32gb ssd mini pcie
$16 – 1GB ram
$89 (x3) – 1 TB hd (est)

Total $532.

Not bad for a 3TB file server.

, ,

2 Comments

Video Games Live Concert in San Diego

Video Games Live

Yesterday, I went to see Video Games Live in San Diego. There were some pretty cool things they did there… one of the pieces they did was for space invaders. They picked someone from the audience to go on stage and put on one of their space invader shirts… which they were able to track its position on the stage which controlled the ship on the screen. He was given a button to shoot and he got to play space invaders by running around the stage while the orchestra was playing the soundtrack and a guy was doing all the sound effects live. Pretty cool.

There was also this epic guy who showed up in a box… and played some awesome final fantasy tunes. He also played some epic mario tunes blindfolded… apparently he is very well known for this… there’s a video of him doing it on youtube:

Flute Link was also there and did this epic skit which I also found on youtube:

All in all, it was a pretty awesome show… it was outside right next to the ocean and the sunset was beautiful. It makes me wish I lived in San Diego.

,

No Comments

Images Submitted!

So I finally decided on the two images to upload for the photo walk photo contest. For everyone that gave me input on which photos to choose, thanks for all the feedback!

By the way, anyone have good suggestions for titles?

On the official site:
EDIT: The original links no longer work… you can see all the photos submitted to the OC walk here
http://worldwidephotowalk.com/orange-county-ca-usa/

On my Flickr:
A smoky afternoon at the fair...

OC Fair at Sunset

, ,

4 Comments

Portable Power

At home I’ve been connecting my monolight to the non-battery backup ports of my UPS because it has a nice long cable and I couldn’t find a power strip. I also like the fact that its fairly heavy so if people trip over it, its less likely to pull the light stand over too. Anywho, I was thinking to myself, it would be quite useful to use this to power my strobe when I’m shooting in places where I don’t have an AC outlet… not that I would usually take a giant strobe when I have a few speedlights I can take with me… but just a thought. Well, I decided to do some research to see if this would potentially be bad for my battery considering the strobe probably draws large jolts of electricity each time it recycles.
After doing research I learn that I could have fried my strobe because the UPS outputs a modified sine wave instead of a PSW (pure sine wave). Anywho, I’m glad I didn’t try it out and end up breaking my strobe. SO… researching this issue further, I looked up some PSW inverters:
http://www.invertersrus.com/inv300ps.html
http://www.invertersrus.com/pwri30012s.html
and I’m considering building my own by hooking up some SLAs to these inverters and making my own portable power unit for powering strobes, a camera using an ac adaptor or a laptop. This could be useful for doing location shoots, time lapse photography, or just taking power to places without ac outlets.

1 Comment

OC Fair and World Wide Photo Walk

Yesterday I participated in the World Wide Photo Walk. Our walk happened to be at the OC Fair. The fair was lots of fun! I’d never been to the OC fair before.

Anyway, I get to submit TWO photos to the photo contest associated with this photo walk… and I can’t really decide… but so far I’m torn between these photos:

_MG_0516

(EDIT: Added this photo)
_MG_0326

_MG_0227

OC Fair at Sunset

To kid land we go...

Maybe you guys can help me pick one :P. And if you’re interested in the rest of the photos, they’re in this set here:

, , , , , , , , ,

7 Comments

New lens! EF 85mm f/1.2L II USM

New Lens!

After purchasing this lens, I was too cheep to dish out the extra $30 or so $$s to get expedited shipping… so I waited FIVE WHOLE DAYS for this lens to get to me… finally it came today, while I was at work. I was so excited when the day finally ended and it was time to ride the train home… BUT the train gets delayed because another train is stuck on the tracks… AHHH! I finally get home 20 minutes late to my shiny new lens!!!

This set has a few of the first shots I took with this lens. I love it. Can’t wait to take more shots with it today after I get home from work!

,

1 Comment

Being poetic

This is how Robert Frost would do unit testing…

sorry if it doesn’t rhyme or do something like that,

i suck a poetry.

The Branch Not Taken

Two branches diverged in a header file,
And sorry I could not travel both
And be one thread, long I stood
And looked down one as far as I could
To where it bent in the for-loops;

Then took the other, as just as fair,
And having perhaps the better claim,
Because it was tested and wanted wear;
Though as for that the passing there
Had worn them really about the same,

And both that morning equally lay
In statements no step had trodden green.
Oh, I kept the first for another day!
Yet knowing how way leads on to way,
I doubted if I should ever come back.

I generate coverage reports with a sigh
Somewhere ages and ages hence:
Two branches diverged in a header file, and I —
Took the branch less taken by,
And that has made all the difference.

, ,

1 Comment