The AnandTech Linux XBOX PC Experimentby Kristopher Kubicki on November 10, 2004 4:00 PM EST
- Posted in
Advantages and Drawbacks of the DesignThe 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.
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.