Advantages and Drawbacks of the Design

The XBOX PC is just a 733MHz Pentium III with 64MB of RAM. 733MHz is extremely weak by today's expectations. 733MHz is not enough to run PC games today, barely enough to run Windows XP and certainly not enough to do anything practical, but play XBOX, or is it? Say what you want about Microsoft, they were onto something when they thought of the XBOX. The USB controllers, built-in hard drive and Ethernet all make for a surprisingly good platform to run basic computing: email, word processing, internet, etc.

There are also a lot of features that make the XBOX an intuitive design for a media center PC. XBOX has an integrated DVD player and a reasonably efficient controller (the game pad). The machine ships by default with composite cabling, but $20 at any video game outlet will get you a component cable package instead. With the exception of PVR functionality, the XBOX would also make a pretty good media center as well. Spending a few dollars on an IR kit for the USB ports adds even more creature comfort.

Keep in mind, the Pentium III Coppermine used in the XBOX is a little different than a normal Pentium III. In fact, the XBOX Pentium only has half the L2 cache of a normal Pentium III, but the 8-way associative paths are left on the processor whereas on the Celeron variant, these paths are disabled. This puts expected performance between a Coppermine Pentium III and a Coppermine Celeron. You may wish to read up on Anand's analysis of the entire XBOX architecture from 2001. The P3 is old architecture - don't expect any miraculous performance out of this processor.

One of the better features of the XBOX is its small footprint in a "stackable" design. So many things about the XBOX just scream, "turn me into my own server rack".



With any distributed cluster, the importance of network latency becomes an issue. Our XBOXes only support a 10/100Mbps network adaptor, and that is far too slow for some serious cluster computation. With only eight nodes, we do not expect to see large latency issues, but maybe we are in for a surprise. Below, you can see a network transfer of a few hundred megabytes:

226 Transfer complete.
779669036 bytes received in 83.35 secs (9135.0 kB/s)


Furthermore the single, dual channel PATA interface limits our ability to use the XBOXes as a high availability network attached storage (NAS) solution; there are not enough interfaces for us to run more than two hard drives - that assumes we take the DVD player out. The 100Mbps limitation on the network interface also dampens our thoughts of any NAS as well. The default XBOX hard drive only runs at 5400RPM; somewhat slow if we plan on doing a lot of disk access. There also seems to be an issue as to how effectively we can replace the 40-pin DMA33 cable with something a little more capable. We are mostly bogged down by network IO for most clustering applications, but the hard drive limitations could come back and bite us later on. As a small indicator of hard drive speed, we ran a few tests to see if it was worth replacing the hard drives in our XBOX cluster.

HD Speed - Kernel 2.6.4 Compile

Unfortunately, getting UDMA100 to work does not seem possible with our configuration. Although we have seen various techniques in forums in order to squeeze that last bit of performance out of the hard drive by hacking your own cable, all of the methods that we attempted did not yield faster bus speeds. The difference between the 5400RPM and 7200RPM drive looks too insignificant for us to continue using the 7200RPM drives in the cluster.

Thus far, we have decided our XBOX has the right configuration to run a very cheap, simple desktop/email PC, a stripped down media center or a distributed cluster that does not rely too heavily on network latency.

Putting it all Together The Test and Initialization
POST A COMMENT

30 Comments

View All Comments

  • TimPope - Thursday, May 12, 2005 - link

    not bad information but i would have liked to see some kind of real world performance using openmosix.. a single x box on its own as a pc is slow but stick 2-4 together using open mosix could make a reasonably good machine and still be pretty cheap Reply
  • Halz - Wednesday, November 17, 2004 - link

    The rule followed in the article for the -j option, "number of proccessors + 1", overlooked the logical proccessors of the Xeon's Hyperthreading.. -j should have then been something around 5 instead of 3 Reply
  • Halz - Wednesday, November 17, 2004 - link

    Simply compiling on the Opteron and Xeon with the same number of threads as the full cluster would have illustraighted a difference.

    More testing should have gone into finding how many threads was the ideal number for the given platforms.
    Reply
  • artifex - Saturday, November 13, 2004 - link

    Aikouka, can't you just use one of those "HD Loader" type programs WITHOUT a modchip?
    I'd be all for modding my PS/2 if I thought I could actually do something useful with it, like stream audio/video from a PC or a ReplayTV or something.
    Reply
  • KristopherKubicki - Saturday, November 13, 2004 - link

    Halz: what should it have been?

    Kristopher
    Reply
  • Aikouka - Thursday, November 11, 2004 - link

    23, yes, you can still do just about anything. I know with the software mod that I use, I've been having problems getting the original MS Dash to load up, but I've gotten around that using other programs for the original dashboard's functionality (dvd etc).

    You know, you can also replace the HDD with just a software mod, and it's not that hard. So, if you don't want to hardware mod and want more space, you can still put in a bigger HDD. As much as some people don't like the XBOX, in my opinion, it's probably the best console to mod.

    24, 2) Modchips also allow hdd loading if you have the PS2 HDD (using HDDLoader.) Also, it lets the warez'ers download and play games on the PS2 that they don't really own.
    Reply
  • artifex - Thursday, November 11, 2004 - link

    1) what we really need is a usb-based tv tuner that actually works. That would be excellent for adding functionality both to XBoxen as cheap PVRs (though I'd still just use XBMC to stream from my ReplayTV, most of the time), but also would be great for iMacs. I'm sure if someone came up with a decent open architecture design, the community would come up with drivers for both types of systems.

    2) what are modchips for PS2s useful for, other than playing import games? Especially with the new PS2s having no drive (is there still a header on the new board style to add one back?)

    3) did I miss the obligatory dnetc test? You gotta do that, you know.
    Reply
  • Booty - Thursday, November 11, 2004 - link

    I don't even own an Xbox, but reading this article has me reaching for my wallet...

    But first, I want to get this straight - I can mod the Xbox and still use XLink, right? I doubt I'd get a Live subscription anyway, but it'd be nice to have that option possible.

    Ideally I'd like to throw a bigger hard drive in there and then run XBMC, without losing the normal XBox capabilities.

    So if I can do that, I'm goin' to the store this weekend... :)
    Reply
  • Halz - Thursday, November 11, 2004 - link

    The compile options for the Opteron and Xeon were starving the CPUs; the number of jobs (-j) was no where near optimal. Reply
  • Halz - Thursday, November 11, 2004 - link

    Reply

Log in

Don't have an account? Sign up now