The AnandTech Linux XBOX PC Experiment
by Kristopher Kubicki on November 10, 2004 4:00 PM EST- Posted in
- Linux
Distributed Hashing
As far as distributed computing goes, distributed hashing has always been one of the original uses of a distributed network. A novelty to some, a necessity to others, hashing a lot of keys takes a very, very long time depending on the algorithm. Hashing keys does not require as much memory as rendering or compiling, which will probably work well for the XBOX cluster. Below, you can see a quick print-out of how fast OpenSSL works on a single node of our XBOX cluster, in comparison to the Sempron 2200+ machine mentioned earlier.XBOX
OpenSSL 0.9.7c 30 Sep 2003 built on: Mon Feb 23 18:18:12 GMT 2004 options:bn(64,32) md2(int) rc4(idx,int) des(ptr,risc1,16,long) aes(partial) blowfish(idx) compiler: cc available timing options: USE_TOD HZ=128 [sysconf value] timing function used: getrusage The 'numbers' are in 1000s of bytes per second processed. type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes md2 557.47k 1546.09k 2091.52k 2292.74k 2362.03k mdc2 0.00 0.00 0.00 0.00 0.00 md4 9312.01k 50638.08k 104728.32k 143168.85k 160380.25k md5 3405.55k 15094.19k 25995.73k 31601.87k 33746.11k hmac(md5) 1456.18k 8698.11k 19730.66k 28729.00k 33202.18k sha1 3989.46k 15676.20k 27201.45k 33287.51k 35621.55k rmd160 2942.53k 12834.88k 21769.13k 26220.89k 27904.68k rc4 42422.11k 56691.63k 59720.45k 60751.63k 60867.38k des cbc 7463.69k 8229.14k 8364.52k 8364.03k 8366.76k des ede3 2861.27k 2966.78k 2985.30k 2990.08k 2990.08k idea cbc 0.00 0.00 0.00 0.00 0.00 rc2 cbc 5796.07k 6218.69k 6275.93k 6291.11k 6313.30k rc5-32/12 cbc 0.00 0.00 0.00 0.00 0.00 blowfish cbc 16639.31k 20924.97k 21380.52k 21482.50k 21570.44k cast cbc 12566.61k 14372.20k 14635.41k 14653.44k 14666.41k sign verify sign/s verify/s rsa 512 bits 0.0035s 0.0003s 286.7 3299.3 rsa 1024 bits 0.0195s 0.0010s 51.2 1049.0 rsa 2048 bits 0.1167s 0.0032s 8.6 314.0 rsa 4096 bits 0.7650s 0.0111s 1.3 90.3 sign verify sign/s verify/s dsa 512 bits 0.0032s 0.0039s 313.5 259.5 dsa 1024 bits 0.0097s 0.0120s 103.3 83.4 dsa 2048 bits 0.0317s 0.0389s 31.6 25.7 OpenSSL>
Sempron 2200+
OpenSSL 0.9.7c 30 Sep 2003 built on: Mon Feb 23 18:18:12 GMT 2004 options:bn(64,32) md2(int) rc4(idx,int) des(ptr,risc1,16,long) aes(partial) blowfish(idx) compiler: cc available timing options: USE_TOD HZ=128 [sysconf value] timing function used: getrusage The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes md2 1307.26k 2797.72k 3917.72k 4364.70k 4511.21k mdc2 3019.04k 3408.81k 3522.52k 3549.56k 3565.32k md4 11304.80k 39934.94k 117963.41k 229924.63k 318395.57k md5 8789.64k 29747.05k 81595.00k 144216.44k 185556.36k hmac(md5) 5081.28k 18230.65k 57049.28k 121655.26k 181687.44k sha1 8715.38k 26775.46k 63727.77k 97333.12k 115140.36k rmd160 7386.51k 21200.32k 45464.16k 64026.54k 72683.38k rc4 88866.45k 94630.03k 96065.66k 96649.60k 97376.13k des cbc 18098.33k 18586.49k 18717.35k 18809.36k 18772.63k des ede3 6551.90k 6620.66k 6660.51k 6666.11k 6667.71k idea cbc 0.00 0.00 0.00 0.00 0.00 rc2 cbc 15875.50k 16446.24k 16598.92k 16634.42k 16655.25k rc5-32/12 cbc 73740.31k 88512.81k 92535.12k 94040.06k 94410.97k blowfish cbc 44137.47k 48594.05k 49798.41k 50179.96k 50288.17k cast cbc 30171.40k 32328.70k 32877.09k 33049.36k 33011.88k aes-128 cbc 37067.76k 37903.95k 38377.07k 38499.61k 38531.59k aes-192 cbc 32505.08k 33104.00k 33376.89k 33556.62k 33580.99k aes-256 cbc 28702.51k 29251.51k 29532.40k 29604.97k 29624.04k sign verify sign/s verify/s rsa 512 bits 0.0014s 0.0001s 702.7 8190.2 rsa 1024 bits 0.0074s 0.0004s 135.4 2648.0 rsa 2048 bits 0.0452s 0.0013s 22.1 798.2 rsa 4096 bits 0.2956s 0.0042s 3.4 236.2 sign verify sign/s verify/s dsa 512 bits 0.0012s 0.0015s 820.1 653.8 dsa 1024 bits 0.0038s 0.0048s 266.1 209.8 dsa 2048 bits 0.0122s 0.0152s 81.8 65.6 OpenSSL>
Our hopes of making this XBOX distributed cluster thing worthwhile experiment are slowly diminishing. Again, we aren't out to break any speed records here, but we would love to see some XBOXes scale well. As another point of reference, our Opteron 150 machine can sign about 1063 RSA 1024 keys per second (in a 64-bit environment); that's approximately 20 times faster than what the XBOX is capable of.
The XBOX is very slow, but having a whole lot of them might scale well. We look to one of our favorite programs, John the Ripper, for more advice. Distrubuted John, or djohn, behaves similarly to make, assigning a different portion of the total keyspace to each machine. Djohn scales extremely linearly, since code cracking times are very long and there are very few places for network latency to interfere with our hashing. Since it takes basically the same amount of computing power to hash the same length key with a different character set, our total password cracking power is equal to N times the password cracking power of one machine, where N is the number of machines in the cluster (assuming the machines are all the same speed). You can see below how various machines performed JTR benchmark tests. JTR was compiled with GCC 3.3.3 with only MMX optimizations.
A star denotes estimated performance. Our eight-way cluster fares pretty well against its workstation competition, but properly manipulating the compile options could tilt the results in any configuration's favor. Also keep in mind that 64-bit compilations of JTR yield up to 20% performance boosts as well on Blowfish, and we get those performance benefits from the x86 platform on which the XBOXes run. Cracking keys shows some immediate promise on our XBOX cluster, but looks to be the only real application.
Not to give the XBOX too much credit here, the puny Sempron performs much better at Blowfish and MD5 hashing. Building an equivalent cluster of Sempron machines would yield more than double the crunching power on Blowfish, and even more on MD5.
30 Comments
View All Comments
ukDave - Wednesday, November 10, 2004 - link
Yes the xbox has a PS1 emulator, only one that i know of. Its called "PCSXbox". Good place for emulator info: http://xport.xbox-scene.com/ , obviosuly a subsection of xbox-scene.And before anyone asks, no there are none for the PS2 (nor will there ever be).
ukDave - Wednesday, November 10, 2004 - link
I'm not 100% sure about the SmartXX, as i have the well known Xecuter 2.3b chip which has DIP switches mountable on the outsode of the xbox so that youc an disable it in order to play X-Box live and whatnot.From what i've just read over on the forums at xbox-scene, SmartXX is fully X-BoX Live compliant. You simply (as you say Kris) boot back into the MS BIOS. This can be done by turning the xbox on by pressing the EJECT button. To enable the modchip, turn on with the POWER button. (source: http://forums.xbox-scene.com/index.php?showtopic=3...
SmartXX section of the forums: http://forums.xbox-scene.com/index.php?showforum=6...
ksherman - Wednesday, November 10, 2004 - link
#3, you said there is mulators for n64 and down. Is there an emulator for PSone games? would love to be able to play FF7 againKristopherKubicki - Wednesday, November 10, 2004 - link
Jeff7181: I think with the SmartXX chip you can actually boot back into the normal MS BIOS and have no problems with X-Link and such. If you install Linux on the last 2 unpartitioned GB of your 10GB drive, your XBOX should basically have no idea that the machine is modded at all.LotoBak, ukDave, am I correct on that statement?
Kristopher
ukDave - Wednesday, November 10, 2004 - link
Oh and Jeff, i believe many mod chips have the facility to simply turn them off with a flick of a switch, so you can continue to use XBOX Live. But as LotoBak says, there is the free X-Link service available too.ukDave - Wednesday, November 10, 2004 - link
http://www.xbox-scene.com is really the only place to go for XBOX related discussion, tutorials, really anything you need to know that isn't covered in this article.I bought a bodged XBOX mod from someone in the UK, got it professionally fixed and re-modded. It now has a 120GB disk for all my games, its connected to my LAN. With the excellent XBMC i can play literally any media file from any PC over the network, be it standard files such as MP3's or AVI's, or images such as .bins/cue's.
Well worth looking into if you have an XBOX that is currently un-modded.
Also, /me wants 8 XBOX's :D Although, those 'leccy costs, eek!
Jeff7181 - Wednesday, November 10, 2004 - link
I've been thinking about modding mine to use to play video over the network... but I don't want to lose normal Xbox (and Xbox Live) functionality. Wish that was covered here, but I guess it's not really a "mod your Xbox" article as much as it's a "mod an Xbox to make a cheap PC" article.LotoBak - Wednesday, November 10, 2004 - link
Nice guys... besides your linking problemKnowing a little more about the xbox scene a few things your might consider...
1) Mods go for as cheap as 10USD retail.
2) Software exploiting the xbox is always an option which results in a 'free' modchip
3) http://tutorials.xbox-scene.com to learn about most anything
4) XBMC dvd menu support is comming!
5) XBMC irc channel on irc.efnet.info #xbmc
6) Online gaming is free through Xlink www.teamxlink.com
7) Emulators for n64 and 'down' are available
8) This is the cheapest htpc with 480p 720 and 1080i available
9) xbmc supports many formats
Audio : wav, aac, ac3, mp3, flac, ra, vorbis
Video : ogg avi mkv rm, mov containers
Codec : xivd, divx, mpeg2, mpeg1, quicktime, realvideo and realaudio (limited) and many others. The video engine is based apon mplayer open source project
Networking :
Shares :Supports ccx, samba (windows file sharing), and replaytv shares.
Streaming : Supports a multitude of video and audio streaming formats. webradio is included which has a 'channel' browser for online shoutcast streams. There is also a apple movie trailer browser.
Scripting :
XBMC has python scripting language implimented so its open to many possibilities
XBMC does have some rough edges but it is maturing quickly. If you are interested in contributing to the project check out www.xboxmediacenter.com and the 'XBMC' project on sourceforge
Feel free to ask questions about xbox stuff here... ill watch it for a while
Marlin1975 - Wednesday, November 10, 2004 - link
http://www.anandtech.com/linux/showdoc.aspx?i=2271...Marlin1975 - Wednesday, November 10, 2004 - link
Page 6 has HOME instead of page 7 link