Thursday, May 21, 2009

Talkinator on 5 Watts

I've written previously about the architecture of the Talkinator server. As a synopsis, the entire thing is basically completely custom. Custom webserver, custom comet server, custom RPC, custom encoding, custom everything (to the Java programmer, this translates as it needing no other jars to run apart from me deciding to use Cliff Click's NonBlockingHashMap instead of Doug Lea's ConcurrentHashMap).

I also pointed out that the only reason you'd want to do something like that is for fun or experimentation or well, ok, that's about it. In any case, this also has a nice side-effect of making everything rather wee. The Talkinator server is strikingly frugal in terms of memory and cpu.

Fast forward to today and I recently found GlobalScale's plug computer. (Url is http://www.globalscaletechnologies.com/p-22-sheevaplug-dev-kit.aspx ).




Simply put, its a 512M ram, 512M disk, custom CPU that pretty much only has a USB and ethernet connector. It has Ubuntu 9.04 (minimized) installed on it, costs about $120, and runs on an advertised 5W of power (of course, the crappy lightbulb in my room is probably 60W). Pretty much you plug in ethernet, plug in power - and then go ask your router where it DHCP'd to.

Then you ssh in. Voila!

I did some linux reconfig and thought about what to install... (a common dilemma when you buy a server without having a purpose). Well, how about the Talkinator server?

Installed Java, unzipped the server - and we're off to the races.

As a test, I made it available on the net and put a second chat box on the front page of http://www.talkinator.com. No one will tell you this is a powerhouse machine - but clearly its specs do allow for some applications to do just fine. (Please allow for some slowness on the plugcomputer because, unlike the regular Talkinator server, its not in a datacenter - its in my bedroom. And its on a dedicated, but still not uber, DSL line)

I went ahead and ran some very informal benchmarks on it. I ran a simple test of how many 404's my custom webserver could push on the plug computer and on a dual-core Opteron rackmount server (which also happens to be in my bedroom - dont ask).

Plug-computer: 550 requests per second
Dual-core Opt: 7700 requests per second (possibly just saturating bandwidth)

Not bad for 5W.

PS: As you can imagine, I probably wont run this test forever, so if you read this entry at some point in the future, the 2nd talkinator box on the home page might be gone.

PPS: Because I'm lazy, the talkinator server on the plugcomputer is running on a non-standard port. So if you're coming in from behind a proxy or firewall or something - you might not see it.

5 comments:

Kirsten said...

Wow wat a great product. I'd really believe this to be a April 1st prank if I'd seen it on that day!

I was wondering how much noise this makes, as I might be using this in the living room. Could you give me some info on that?

Kevin said...

WANT!

Does it have an expansion slot for more SD memory or anything? If not, I wonder how difficult it would be for them to add...

Paul Tyma said...

zero noise and has usb so you should be able to connect anything. It has a slot that looks like a memory card slot but honestly i didnt check what it was for.

Anonymous said...

well, it actually consumes 19W, according to http://www.globalscaletechnologies.com/t-sheevaplugdetails.aspx#features

Anonymous said...

Hi, thanks for heads up, neat device indeed :-)

I'm sorry to say, that talkinator worths a damn, because it doesn't work in opera browser :-( At least I'm happy user of mailinator ;-)