Compute cluster question

lanmat

Junior Member
May 12, 2005
3
0
0
First off, I'm sorry if this has been answered somehwere else. I took a look at another thread comparing the X2 and Opterons, but the discussion centered around the vast cluster # requirement of the system in question, so I thought I wouldn't mess up that guy's thread with my question. I also posted in the distributed computing section, but it's probably more along the lines of the processor forum (and you guys are more active in responding, too).

I am looking at building a small 'test' cluster for testing out applications (specifically FDTD code for rigorous electro-magnetic calculations) which my research group will then take to the campus computer cluster (which we hear is drastically under-used). I'm interested in less than 10 nodes, however, as we have only about 5-9k to spend on the entire thing.

Specifically I'd like to know price/performance how an X2 cpu compares to an identically clocked Opteron (other than the 25% cost difference). Space-wise, I know rack-mount is the way to go, but if we're talking 8 processors, what's to keep me from getting 4 slightly cheaper dual-core SFF computers like Monarch's Hornet Pro? (SFF mobo's are now capable of 4G RAM)

Also, I know Windows is pratically never used in clusters, but there are a few MS apps our group uses (Matlab, for instance) which might benefit from some distributed computing in addition to the MPI code being specifically developed for a partner to run on their own cluster. Can someone (or everyone perhaps) tell me why linux is always used besides the cost factor and a little less overhead? We don't employ any full-time person fluent in Linux so every other year or so the group would have to elect a local 'guru' to learn how to operate our little 'test' cluster and maintain it. We're not a Math department where everyone speaks linux and it takes a little effort to veer away from the ubiquitous MS beast. Aren't all cluster programs custom c++ (or similar) code? In my limited understanding, I don't see why a c++ program couldn't be developed on one cluster of a particular OS and compiled/run on another cluster with a different OS. Hence, unless I can be convinced otherwise, I guess I'd initially pick the 4 SFF computers as above (X2 4600+ & 4G RAM) for 8 nodes. If running the code on another larger linux cluster required development of the code in the same OS, then how about 2 of the boxes being linux (for the actual project to be ported to another cluster), the other two running windows for other distributed MS apps using, say...MPICH as the middleware (compatible with both OS's so all 4 could be used?).

I see this being the most flexible solution for a small cluster with much more staying power in our group as it could be used for many other things from the windows machines. But I'll be the first to admit I don't know much about clusters, so pipe in! Tell me why it won't work and/or show me a better performance/$ system which could still be used by the average computer novices that roam through our group every 4 years long after the initial charter for this cluster is done and I'll capitulate.

P.S. - if windows can be used, I'm guessing it'd have to use a server OS (i.e. not XP)? Or is that only if all the nodes have to talk to eachother? I'm not the one setting this up, but I guess I'm the current one in the group that knows the most about hardware in general...just not the ins/outs of what makes the best hardware for clusters.
 

redhatlinux

Senior member
Oct 6, 2001
493
0
0
I think that you have under estimated the overhead saving of linux. MS OS's and Apps are cpu happy little buggers. Linux also supports more 'unusual' hardware than MS.
The main difference that you are going to find is not really in the cpu performance. Mobo's supporting Opterons are most likely to support higher speed disk through SCSI interfaces. I hope that the SFF systems support all the needs of your project. For such a small number of nodes I think I'd go with full size cases to add devices as needed.

Hopefully we will see the day when an X2 can run Linux in one core and XP in another with linux supporting the 'odd' devices and faking them out to XP.
 

phaxmohdem

Golden Member
Aug 18, 2004
1,839
0
0
www.avxmedia.com
To my knowledge the main difference between Opterons, and their Athlon64 brothers are:

- L2 cache... Opterons come standard with 1M (some athlons only have 512kb)
- Hypertransport links... Opterons have 3? Whilst Athlons have 1
- Memory... Socket 940 Opterons require Registered ECC memory

As far as speed goes, if you were to compare an X2 4600+ to a dual opteron 250 (or opteron 280 dual core) I would have to believe that performance would be very close (opteron might win due to slightly more cache here.) Opterons garner their premium price for their stability, ability to run in MultiCPU environments, and ECC memory support.

For your purposes of compute nodes, I would strongly recommend the X2 if you're on a budget. I have 8 computers set up at home as a render farm for Lightwave 3D, they are currently a mix and match bunch of P4's and AThlon XP's but as soon as I can afford it I am going to start migrating them all over to Athlon64X2 3800's (or 4200's if the prices fall a bit)

AS for linux... I have no idea Different people will tell you different things. I have a VERY limited experience with Linux OS's.. from that I've learned that some Distros like REdhat and Mandrake with their GUI's and Bell's and Whistles and crap installed, are RAM hungry little suckers, and I wouldn't want to say that Windows or Linux has the upper hand in this area. However if you run a command line based distro like Debian, overhead is virtually non-existant by todays standards, and it free's up lots of RAM and CPU cycles for your computations. Installation can be bothersome at times though for a noob like me.

Hope some of this reply helps. I am fascinated by clusters and the like, and to my knowledge the Athlon64's/Opteron clusters reign supreme in (price/performance) mathematical computations, so I'd say the more A64 cores+ more MHz per core you can pack into your boxes the better off you'll be.