Choosing the Right Cluster System
ckotso asks: "So I've read here and there about linux clusters, and I am ready to set on creating one with some help of the educational institute I am working for. So far I've found out about Beowulf, SCI and MOSIX. I really wish I can get some help on this, since NT is making its way into the University gradually and I hate to see this. I want to give a cheap and robust alternative to this place, I simply have to change their minds! " Interested? There's more information inside.
"My questions are:
- Have I missed any other serious competitor in the cluster field?
- What are the pros and cons of these systems?
- Has anyone tried them all and written any report as to how they compete?
--
I think we need to start out with this very important question. What do you want to use it for? Depending on how you want to use it will determine the style of cluster you need. Each style has it's plusses and minuses. Some are better for batch processing, other are better at handling large amounts of interactive work. What do you need?
I've found that the Mongolian Cluster's fsck is the best and fastest around! :-)
Linux is the OS for parallel clusters, but for High Availability you might to better just to buy redundant hardware and run a single linux box for now (since the main reason you need NT clusters is 'cause you have to reboot the box for installs, memory problems and general BSOD problems). If you want to run a clustered database server or something for scalability, look to Sun right now. Maybe with the 2.4 release we'll be able to make some inroads there, but right now Linux has some architectural issues with sharing disk systems.
Sounds like you want Windows clustering services.
Free with NT advanced Server, 32 $500 boxes later and you have a zero Admin web/application farm.(sic)
Oh and I'm told it's easy to find support personel who know how to install Service packs.
Here are some information you may consider before starting your own cluster:
So, some positive factors, some negative ones. If you want to convince your University, always remind them that they can always count on the support of other universities and research centres the world over that are using this technology right now.
Good luck!
The right to offend is far more important than the right not to be offended. (Rowan Atkinson)
I'm not associated with Sun and would rather not have another discussion on whether the SCSL is either a Good Thing or Evil Incarnate, but recently Sun announced the availability of their high performance clustering toolkit as source under the SCSL that has been used by many, many machines in the top 500. Pulling that announcement out of my mailbox, it looks like:
QUOTE ON
Sun is pleased to announce that on November 15th Sun HPC ClusterTools[tm] software was made available through Sun Community Source Licensing (SCSL).
We appreciate the interest you have already expressed in this offering and are excited about the opportunities that the Community Source Licensing model presents. Since our initial June announcement we have completed the work needed to make HPC ClusterTools available through SCSL, and we are very encouraged by the large number of individuals who have registered their interest at our Web site. We look forward to development by the community and wish to extend our thanks to all who will be joining this community effort.
You can access HPC ClusterTools SCSL source code via the Web at:
http://www.sun.com/hpc/communitysource
This site contain a licensing overview, FAQ's, technical information, download information, support information, and related links. This provides an excellent introduction to the Sun HPC ClusterTools SCSL product and should make it easy for you to download, build, and start developing with the product.
Again, we thank you for your interest and look forward to your active participation in the ongoing development of the community.
QUOTE OFF
All that stated, the most useful info is actually on the Technical Description page or on the previous ClusterTools 3.0 documentation..
Sorry for the anonymous post but I just haven't logged in for a while. MOSIX only does resource management (balancing). The code to get data distributed over a MOSIX cluster is very, very simple. (A basic fork would do the trick). I have setup a MOSIX cluster in an afternoon and got my processes distributed automatically. There is some limitation but all in all it's very nice. If you want to do a quick demo try the MOSIX solution. If you have a lot of expertise the Beowulf seems to be the highest performance solution but has the drawback of needing expertise and high bandwidth connections between nodes that translate into cost. If you have a LAB with a few computers setup the MOSIX cluster and play with it it should not take to long. The Beowulf I would only really investigate if the problem domain cannot be subdevided into large chunks. Regards jacobus@oddesy.co.za
If you are looking for the kind of clustering that Windoze NT does, then you want something like TurboCluster Server from TurboLinux, it is clustering for high availability and high throughput for web servers. TurboLinux
If you need more general load balancing clustering for enterprise applications, look at Linas Vepstas's Linux Enterprise Computing pages at http://linas.org/linux/, he has a section on clustering on that page.
If you need supercomputer numbercrunching or render-farm type clustering, then the Beowulf approach is what you want. Linas' pages also have a section on Beowulf type clustering.
Click here to go directly to the project abstract (more details, less graphics.)
--
NetInfo connection failed for server 127.0.0.1/local
You forgot...
Second: SCI is orthogonal to the other two technologies - it is a special hardware network technology (Scalable Coherent Interface), originally made to support distributed shared memory. You may be thinking of the software Dolphin Interconnect Solutions provide with their SCI solutions, but as far as I know, that doesn't directly enter into the same space, either. Their web pages does certainly not indicate that it does, and my discussions with (one of?) their Linux developer(s) implied that it contained somewhat more (lock managers etc), but not in the same space. A technology that compete with SCI, though proprietary, is Myrinet. This has a longer history than SCI, and has been less plagued with problems than SCI (though SCI is supposedly quite stable now).
Third: There are a bunch of other technologies (some cross-platform, some single-platform) that compete in making it easy to build clusters. MOSIX and Beowulf are just two of them. If you give more details of what you want to achieve, I'll dig out references from my collection (made to support the development of FreeBSD-specific clustering improvements, so some types of references may be lacking, but I'll probably be able to come with at least some points to start for any wanted cluster workload.)
Eivind.
Doubting the existence of evolution is like doubting the existence of China: It just shows that you're uninformed.
On the other hand, administration/management type people who don't know what a Beowulf cluster does or how it is used are often involved in the decision making process for computers at universities/companies. Pro-Windows zealots of that type try to throw NT at everything too. And as we all know, Windows NT is not a drop in replacement for UNIX/Linux for every task either.
What is your problem with someone trying to do a little research into what alternatives are out there? What have the Windows zealots got to hide? If they can't ask questions like this in a forum like Slashdot, where can they ask?
As for making real-world decisions in the future, it is best to have the information on which to make a good decision. You seem to be implying that people should just roll over and go for the 'easy answer'.
One VERY important thing to consider is how the clustering technology is implemented in a given solution. For example, Mosix does not require any rewrites to your code, except maybe making the program fork off more often so that the processes can become more distributed. Paralell Virtual Machine (PVM), which is one of the most popular methods of implementing Beowulf clusters, however, is a code library that must be integrated into each program you want to run on the cluster. So, depending on your (or your users) programming knowledge, you should be careful about what clustering architecture you use.
Admitting that you don't know is the acceptance of knowledge.
"If you have done 6 impossible things this morning, why not round it off with breakfast at Milliways" -- hhgg
Well, I can't find the article now, but didn't we have an interview a while ago with a guy (whose name I forget) that was doing some cool Linux clustering.../real/ pull-the-plug-and-it-fails-over clustering? I remember it was a bit different from Beowulf and it was really cool.
It's 10 PM. Do you know if you're un-American?
Do you want great clustering? Use VMS, nothing beats it for clustering. The UI sucks, its a pain to admin, but the clustering gives your tons of power. Most clustering uses custom software, you can just as easily right that custom software for VMS as you could for UNIX.
Matt O'Keefe
U. of Minnesota
I would whole heartedly recommend that anybody interested in clustering should read Greg Pfisters "In Search of Clusters" published by Prentice Hall - ISBN 0-13-899709-8. It is the seminal work in this area.
. html x .html
Other good resources include:
- IEEE Task Force on Cluster Computing
http://www.dgs.monash.edu.au/~rajkumar/tfcc/index
- Linux-HA http://linux-ha.org/
- some general links
http://www.tu-chemnitz.de/informatik/RA/cchp/inde
There are more clustering products out than you can shake a stick at, and everybody seems have a different take what they mean by a cluster.
Does anyone have any information on what the Linux Cluster Cabal are up to ?
Probably the best thought out cluster solutions are OpenVMS Clusters and UnixWare NonStop Clusters.
Zootlewurdle
Share and Enjoy
They do clusters, and they'll slap together an entire system for you.
Mind you, I haven't tried their systems (umm, clusters are expensive ya know), but it seems to me that going with VA would get you pretty damn close to a turnkey solution.
Give 'em a call. It couldn't hurt, anyway.
Sure you can get Intel boxes for a dime a dozen...sure linux is free. Sure Windows costs money to buy. BUT they both require something that costs alot: service.
:), and can use hetero/homegeneous CPUS, etc.
Beowulf clusters are potential security risks if not properly administered and kept patched up to date. Installation and maintanance require *good* sysadmins. What's the average salary of a sysadmin? Makes hardware costs look like peanuts.
I have to beleive that your "educational institution" is looking for some serious numerical problem (certainly doubt that it is for database management...). Look at what you currently have in house for expertise. Then do some homework on MPI or PVM, both standards/frameworks for doing parallel computations. One of those 2 will fit your needs. There are ports to almost every known OS (haven't seen one for the Amiga, sorry
First of all, as some other posts said, don't go off building a Beowulf (that name has been overused IMHO) unless you know what you are building it for: clusters are built around the software you're gonna run on them, not the other way around.
;-). Also, do not plan to rely on NFS: Linux NFS is spotty when stressed by some high-bandwidth processes.
;-)...
;-)...
If you plan to port MPP applications from a Cray or an Origin 2K, a Beowulf with and MPI port will most likely do what you want. If you are interested in a HA cluster, then we're really not talking Beowulfs; take a look at TurboLinux's TurboCluster distro.
If you want to throw lotsa CPU power to a problem that's not already MPP'd, a port to Mosix might worth your while, but investigate cautiously: Mosix does a good job (I am told) of process migration, but it doesnt migrate sockets yet, so it may effectively double your network bandwidth --this may not be a problem if your interprocess comm is minimal, or it might be a show-stopper. Do consider a port to MPI in this case: MPI is an industry standard and it works almost as well on a Cray as it does on a Beowulf.
Network communication is not as big a deal as it used to be: besides SCI, there's Myrinet (with OSS drivers and software too), Gigabit ethernet (also OSS drivers from some companies) and they all more or less work with Linux. Or you can go with the original Beowulf solution and bond Ethernet channels (i.e. make 2 NICs look and feel like 1 to the OS, almost doubling your capacity). It all depends on your application's inter-process communication requirements.
If you do decide on a Beowulf, heed these words: be carefule of SMP machines, at least this early in the game. Linux SMP is deficient at best --hopefully 2.4.x will solve it, but I wouldn't hold my breath. If you decide on an SMP machine, stay away from Xeon's as the extra cost will be useless right now --because of SMP problems with Linux, you might as well have a regular Pentium in there, or even some Celerons (hey, it'll buy better networking equipment
I guess the best advice would be: Don't go spending all your NSF money right away. Get 2-3 machines with some Fast Ethernet, set the thing up, port your software, make sure it works as well as you expected it to, THEN go spend the big $$$ on SCI, more nodes, etc. The biggest advantage of Beowulfs is *Freedom* as in flexibility
As the old maps said: "Beware: Monsters Here"
engineers never lie; we just approximate the truth.
One thing to keep in mind is that, last I checked, Beowulf clusters can still only be used on 2.0.x kernels, which implies reduced performance, security, and stability compared to a system such as MOSIX which will run on 2.2.x (or future 2.4.x) kernels. If this has changed, please let me know, but it was accurate as of September, and I haven't seen any new announcements on freshmeat about it, so I'm assuming it hasn't changed.
I admin a small (8 node) cluster, and so far my options are stay at Redhat 5.2/2.0.36 until Beowulf is ported to 2.2 (with all the problems of finding glibc 2.0.x RPMs now, etc), or install Redhat 6.1 and then reinstall 2.0.36. Neither of these seems particularly optimal.
Please be more respectfull to our god and savior Linus....ohhh crap... I just jizzed down my pants from saying the name... crap...
Do you yahoo?
No, Beowulf does work just fine with 2.2.x kernels
Lobos2 at NIH is a beowulf cluster with 100 compute nodes that were recently updated to 2.2.13
-----Transmission Complete----- If you want to email me...Don't
(mainly from my moderation limit set to -1), I believe there's only one way to do things, and that's via a beowulf cluster. but only if you're an 3l337 h4x0r and you get f1r57 p057 on \.
yah, sure bill. I'd rather have 9 more machines with a FREE os.
Almost no one tries to build NT clusters. One cluster vendor reported that only about 10% of their clients specify NT. The reason is simple - you are simply throwing your money away, as NT doesn't scale. That alone should be sufficient to make the case against NT clustering.
Also notable is Condor (similar to Mosix).
http://www.cs.wisc.edu/condor/
I suspect you just want lots of general purpose
compute power available to many users.
One of the other posts already pointed out that NT Enterprise Edition only supports 2 node fail-over. However, I believe that [he] is talking about Windows load balancing service. This used to be "Convoy Cluster Server". This is a pretty slick little piece of software, but it's not 100% transparent. 1. I believe that it supports up to 16 nodes in a cluster. 2. It distributes load based on which machine is least loaded in the cluster getting the next request. 3. You can't use things like ASP sessions because they don't work in a distributed environment. Jim
Why don't you go to the website for VA Linux which is building clusters. Maybe you can learn something there.
There is no reason a cluster needs to be connected to the rest of the world. It would actually be advantageous to have the cluster isolated from the world to prevent it from talking to the internet/intranet and using it's time in a meaningess manner because a packet got misrouted. This can be accomplished by pulling the plug to the world, or by having the plug to the world running through a single high security firewall, that is if outside access is required.
Now the problem is physical security, which for all but the determined, is trivial: Lock the door!
Laugh, it's good for you!
True, but from the tone of the original question it really doesn't appear that this person should be responsible for making the decision. He's acting like the Slashdot poster child "they want to use NT but I know Linux is better".
And why hasn't anyone mentioned PVM? It works to cluster/parallel heterogeneous networks (thats mixed unix/win32 for the less educated among you). http://www.epm.ornl.gov/pvm/pvm_home.html
Since they weren't mentioned, I thought I'd mention them here: Mosix, Beowulf, and I couldn't find SCI.
We build turn-key Beowulf systems for a living. You may want to consult:
Beowulf.org
Beowulf FAQ
Beowulf Underground
Beowulf Quick Start
In addition, you may want to contact us directly about helping you convince your management that turn-key and supportable Linux Beowulf Clusters are available and do useful things. Take a look at our success stories.
Doug Eadline,
deadline@plogic.com
Paralogic, Inc.
Novell has a very nice clustering solution for NetWare 5. Check out http://www.novell.com/products/clusters/
Check this out, some actaully is offering a course on Beowulf Administration.
G4 clusters.... =)
what's that? clusters with supercomputers? count me in!
As all the other posts note, the term cluster is too vague. If your plant needs clustering for High Availability and you're using Netware for file and print sharing, then you might want to check out Novell's Netware Clustering Services.
The Novell cluster works via NDS. Novell has designed a new directory object called a cluster. Servers in the cluster are mapped via NDS. The cluster object runs on any one of the servers in the cluster.
Data is shared via a Fibre Channel SAN. The cluster knows who has what LUN's mounted, what applications are running, and where they are in cache.
A LAN link is required for heartbeats and there is a special white board in the shared storage to monitor server stats.
If one of the servers goes down, then the cluster migrates the applications that were running on the server to the other servers on the system. The whole process takes less than a minute. The NCS also has some elaborate algorithms to decide if a server is down, and applies a poison pill to insure non-duplicity of processes.
It is not for the faint of heart to set up but once it is running, the HA is great. If, via the Novell management software, you take the server down, the applications migrate without a hitch. Maintenance on the machines (new NIC cards, drives, or processors) can be accomplished without any downtime. Backups still require server processing but they can be done without impinging on the LAN. The heartbeat also adds very little overhead to the LAN.
machinator omnis sine licentia
MOSIX is implemented in the Linux kernel. It uses the most up to date information about the availability of the cluster-wide resorces, e.g CPU loads or free memory. Thus if you prefer to use PVM/MPI, then after the initial assignment of the processes to machines (by PVM/MPI), MOSIX will migrate processes to the best available machines during the execution. Beowolf use PVM/MPI for initial (static) assignment of processes, but is unable to take advantage of new resources, e.g. faster machine, that might become available during the execution of your processes. Bottom line: if you run MPP mode (one process per node) and all your machines are the same speed, then you'll get the same performance with MOSIX or Beowolf. However, if you have a time-sharing system, or machines with different speeds (or different amounts of memory), MOSIX will take this into account and thus will outperform Beowolf.
they want to use NT but I know Linux is better
Perhaps it is more like "They want to use NT, but I don't want to get stuck supporting it". The other question is, should pointy haired bosses who won't be the ones using the machines be the ones making the decisions on platforms either? I think the guy asking the question is a sysadmin. From my experience, he should certainly have some input on what platform is chosen, since it will directly affect his job. Contrary to how Microsoft markets it, in my experience, NT requires not only more service and administration because it is less reliable, but it is less convenient and more complex to administer, especially as the number of servers increases. GUI based admin tools really become more of a hindrance than an advantage when you need to perform the same functions on dozens or hundreds of machines, and you start wishing for a nice, fast command line interface and/or scripting alternatives.
Please go to see www.turbo-linux.com. They have set up many systems. They have the lead in Japan.
Where the only monopoly we support has a Boardwalk and a Baltic Avenue.
If you're looking to cluster for high performance, you need to decide which HPC paradigm you're going to go with and choose your clustering based on that.
Distributed shared memory (DSM) is great on the programmer side. You've got a big steaming chunk of memory shared among processors, and a bunch of parallel threads/processes (depending on OS) acting on that chunk. DSM makes a lot of sense for database servers, and is the prevalent HPC solution among the big server companies (Sun, SGI, etc.) since multithreaded code runs dandy without any modifications. MOSIX implements DSM.
The downside: vast memory bandwidth required for sharing and high overhead. In an educational environment (and IMHO), DSM is a Very Bad Thing, since programming DSM teaches you nothing about actually using parallelism--it's just like working in any other multithreaded environment.
Students are better served by learning on a message-passing system, which is what Beowulf clusters are. You have a bunch of computers and a way to make them talk to one another (PVM or MPI)--"now implement some algorithms!" MP machines are [given equal-quality implementations, a big given] generally faster and more scalable than DSM machines, as well as being more "pure". Optimizing DSM programs is much easier if you have MP experience.
Downside: MP is a pain to program and even more of a pain to debug. But students could use more suffering, right? Language support is a little iffier for MP, too, with Fortran and C being prevalent.
You should be first reading the Beowulf FAQ. (There are links in prev. posts), but my take for the /. readers here.
First of all, distributed/parallel computing is not an area in which there is consensus on hardware/software systems. Though, there is an accelerating trend towards building supercomputers comprised of clusters of commodity components. The fastest computer on Earth, last time that was ASCI RED (and I hear it's gotten an upgrade!), is built as such. That is vector computers and ultra-expensive parallel computers are being phased out in favor of cluster systems.
A cluster is basically a number of computers connected through a decent interconnection network. On each compute node a traditional OS runs. On top of the OS, a software interface that implements either a message-passing environment or a shared-memory environment sits. In some cases, it may be desirable to modify the OS itself for a better single-system image (such as MOSIX patches). Thus, a cluster is nothing but a number of connected machines. With proper software, it might be possible to run huge clusters on the internet (Check the Globus project!)
In the design of this system, a couple of parameters must obviously be determined.
1) Number of compute nodes
2) Processor/Memory configuration of each compute node.
3) The interconnection network:
a) Network interface of each compute node
b) The switch that is used to connect each machine.
An incorrect estimation of these parameters may give rise to a very sub-optimal hardware configuration. That is the network must be fasst enough to account for the messages being sent, the memory must be JUST large enought to support the granularity of processing, etc. I advise you to read some introductory text on parallel programming before embarking on a cluster effort.
Notice that there is no SINGLE piece of software that will magically parallelize and distribute your applications gracefully. You will find that explicitly parallel or distributed applications will run much more efficiently. While you can get a global process implementation, or even shared-mem implementations with some software, the real "speedup" is going to be observed for explicitly parallel programs, for instance linear algebra libraries designed to run on message passing architectures.
Finally, let me give you a list of component we're in the process of acquiring.
32 PII-450, 128 MByte compute nodes with 3COM Fast Etherlink 100Base-TX
1 master node, a plain PIII-450, Gigabit ethernet and another NIC to connect to internet, some megs of disk
1 devel workstation, plain PIII-450...
3COM SuperStack II 3900 36-port 100Base-TX, 1 1000Base-SX managed switch
32-port (hopefully) multi-port serial board (you use this for diagnostics)
The software will simply be the stable Debian release, on the compute nodes not much software will run. Of course the lam package will be resident since it is a pretty good MPI implementation. The server will be uplinked to the switch with 1000Base-SX so that it can act as a synchronizing source (you know, beowulf master node, file server, etc.) The multi-port serial board provides a shell over the serial cables to each compute nodes, that gives you a good chance for repair when a node goes down.
Keep clustering,
--exa--
Just throwing out a new Appleseed thread because I think it deserves it. I wrote an article on the clustering project at the UCLA Physics department nearly a year ago. They had achieved spectacular results using 300HHz Beige G3's and 100BaseT. Very simple setup using off-the-shelf hardware. I do not know if they have looked into using Firewire or Gigabit Ethernet and/or the new G4's yet. But, I would expect that the performance from a 8 or 16 box cluster of G4's with Gigibit Ethernet would pretty much blow away a beowulf cluster in both the performance and price categories. As for NT... don't make me laugh. Doctor Viktor Decyk is the project coordinator and would be glad to speak to you I am sure. The project website has been posted in a previous thread. Connor W. Anderson IT Manager Department of Radiology Univerisity of Chicago
"Being Irish, he possessed an abiding sense of tragedy which sustained him through brief episodes of joy." -W. B.
Depending on what you need the cluster for you should adapt network at your clustering technology.
KAOS
PAPERS
Grey (Chris Lusena)
My questions are:
1) Have I missed any other serious competitor in the cluster field?
You sure want to try the newly released GPL program ALINKA LCM to do the management and configuration of Linux beowulf-type clusters.
Once installed, the software can automatically setup from the network a beowulf cluster (with or without using the hard disks) within 2 minutes. With this software, it is dead easy to build an "instant beowulf" cluster...
The current version is 1.1.3 and can be considered as a beta release, although some sites use ALINKA LCM v1.1.3 in production. If you wish to know more about ALINKA LCM, you can read the on-line documentation here . ALINKA provides software tools for commodity clusters running Linux since August 1999. Customers of ALINKA include the French CEA (Center of Atomic Energy) and public research laboratories.
The ALINKA company provides commercial support for ALINKA LCM and also sells a GUI for ALINKA LCM, called ALINKA RAISIN, running within a web browser.
You can check http://www.alinka.com for more information on this new killer software !
quake on a really beefy cluster :D
or maybe pingus?
Imagine the droolpits.
ATM is not necessarilly the best connectivity solution for this particular application, nor is routing. ATM is a cell-based OSI layer 2 technology that breaks each cell down into a 53 bytes. On an OC-3 (155Mbps) one can incur quite a bit of overhead for LAN-based traffic so you won't necessarilly see your full 155Mbps of traffic. ATM works well for native ATM devices that require real QoS and are able to manage the setup and tear down of the various types of circuits that are available in an ATM cloud. IP in all it's forms have to be adapted to ATM in one of a couple of ways, LAN emulation being one of the most popular. Setting up permanent point to point PVCs is also another way to do it.
One of the qualitative differences between clustering and MP is that in a clustering environment one has to be able to write applications that can be made parallel and are capable of taking advantage of the massive amounts of CPU time available while not suffering from the relatively small amounts of memory bandwidth available. Most ACs don't understand this, so we get comments like "I want to run quake on a Beowulf". It follows that increasing the amount of bandwidth between machines will make the clustering environment less restrictive from a memory bandwidth point-of-view. One never wants to "route" in a clustered environment. Devices that make forwarding decisions at OSI Layer 3 are all inherently slower than devices that make forwarding decisions at OSI Layer 2. There are L3 switches that forward packets at wire speed, but these are expensive and pointless to use in this type of environment, as it's not needed. Basically, one would want to put their cluster into a single subnet (and vlan) in a completely switched environment and endeavour to minimize broadcast traffic. At a minimum I would recommend a completely switched 100Mbps environment for a low-cost cluster.
It should be noted though, that all 100BaseTX switches are *not* non-blocking. I wouldn't consider using anything that isn't. If one requires additional bandwidth for a particular type of application there are a couple of other options. Gigabit ethernet will provide approximately 3 times the bandwidth of fast ethernet in a Linux machine, mainly being limited by the throughput of the stack. One also may want to consider HIPPI if the need is there. HIPPI is very very expensive, and to the best of my knowledge only available from a handful of vendors. One of those being Essential/ODS (my previous employer). I believe that there is a driver for Linux for the Essential/ODS HIPPI NIC, though I'm not certain what the throughput is. HIPPI is being used by the big boys, Sandia National Labs, Nasa Ames, Lawrence Livermore, mostly in SGI environments. Beyond HIPPI, there is something called GSN (Gigabyte Switch Network) a 6.4Gbps environment being adopted as the next level of bandwidth by both ODS and SGI. ODS filled the first order for GSN switches sometime in January of 1999 I believe. I'm not even sure there is a NIC available for the type of hardware that's supported by Linux. For info on HIPPI and GSN stuff check out ODS' web site I would recommend HIPPI, then Gigabit Ethernet for a high performance cluster. The Lanblazer from ODS and the Cajunswitch 550 (the same switch, one is OEMed from the other)for gigabit ethernet or fast ethernet. In addition, there are products from Extreme Networks, Fore Systems (Berkeley Systems Gig E stuff), HP and I'm sure there are a few others. Most of the stuff from the top 3 (Cisco, Nortel, 3Com) are not non-blocking, one should do the research before making a purchase.
So another problem is that most of these clusters are 32 bit. I am constantly banging my head against that fact when I try to port codes from big iron to clusters. Makes me wanna kill myself sometimes...trying to figure out how to get a multi-thousand line 64-bit fortran code to run on a 32-bit machine with half-assed compilers.
The next Suns are going to be cluster machines. Solaris 8 will support a single operating system running over an internal cluster.
But, I would expect that the performance from a 8 or 16 box cluster of G4's with Gigibit Ethernet would pretty much blow away a beowulf cluster in both the performance and price categories.
I seriously doubt that. To use the AltiVec part of the G4 (which is what gives its absurdly high peak performance), you need to be either hand-writing PPC/AltiVec assembly code or using a vectorizing PPC/AltiVec compiler, and I have not heard of *any* of the latter. Also, the memory system on the G4 isn't much (if any) better than that on a standard Pentium III, which frankly sucks (~300MB/s). A Beowulf cluster comprised of Alphas with a Myrinet network will likely wipe the walls with a similarly sized G4 cluster with Gigabit Ethernet, and will cost about as much -- large GigE switches are expensive.
8 DS10 1Us (@$3k) + 8 Myrinet cards (@$1.4k) + 1 16-port Myrinet switch (@$4k) = $39.2k
8 G4s (@$2.5k) + 8 Gigabit Ethernet cards (@$0.7) + 1 8-port Gigabit Ethernet switch (@$15k) = $40.6k
"My life's work has been to prompt others... and be forgotten." --Cyrano de Bergerac
First of all, forgive my not-so-good english but it is not my mother language (I live outside the US & UK).
So: It is true that I am not going to make any decision. I am a computer administrator, no darn executive. What I _CAN_ do though, is present my superiors with facts. This is what I am trying to find and why I asked slashdot users on the first place. As for what I know, yes I do know Linux is better than NT. I have a long background of Unix (or Unix-like, for that matter) based computers administration, and I consider it critical that this University's users have access to a high availability super computer. If this makes me a poster child, I accept this attribution. What I also accept is that my question was not clear as to the needs. What we need is a fail-proof number-cruncher. We need a system that can carry long computations (which could mean a beowulf cluster) and also be highly available (which I am not yet sure what it means). We have already setup a high-availability SUN cluster with 2 SUN250, but that will act as a web & mail server only, plus its cost is somewhat big. What I want is to built a system for the users to log in, and run their simulations & stuff. This should definitely be up on a 24x7 basis.
Now as to PVM, with which I do have experience, I must let you know that it cannot be considered a cluster solution as it is not an integrated solution. PVM is just a parallel programming API, just like MPI etc. PVM can be used with most cluster systems (Beowulf for example), but that's all. What we need is more than parallel computing, period.
-- fsck your brains
Ahh, that's your BEST example of NT scalability? ROFL! Congrats to Unisys - they are now where Sun was, oh, about 8 years ago in terms of the SMP. What utter FUD. What they've proven is that if you throw enough monkeys at a problem, they can come up with a solution. The best part, though, was the crapola about "security". LOL. The one thing Microsoft has proven is that Windows is the best backdoor into a computer that was every written. It's a pity no one at Unisys had the brains to design a fast system. It might actually perform well if they had used Linux.
So what you're saying is that maybe, just maybe, NT will scale if you put a lot of work into it. Up to 2 processors. Maybe a few more. Beowulfs typically run 16-32+ nodes. Putting one together is fairly straightforward.
This is your best argument? How sad. I've been working with parallel processing since you were in diapers. Ok - Unisys has proven that if you throw a lot of engineers at a solution, you can make NT scale. You could do the same for DOS, too. NT doesn't scale. Period. Windows 2000 *might*. But it's not out yet, last time I looked. And Microsoft is going to have to go through the same learning curve on this as everyone else. And it will probably take them 2-3 years to work all of the issues out, that always crop up with a new O.S. release. In the meantime, you can expect to see lots of bugs, crashes and the usual headaches with a major O.S. release. Which is why the Press is reporting that IT managers aren't putting their mission critical stuff on these types of systems. At least not the ones who know better.
I think that a lot of people don't realize that turbo linux "cluster edition" is just the LinuxVirtualServer project. www.linuxvirtualserver.org great stuff, btw, for big webservers
i just wann say that again... jizz
Can you run "just applications" over a cluster? I had a really cool idea (and NO...it's not building a cluster in my basement so I can play Quake or Carmageddon II), but all of my research into the subject of clusters has shown that they work only for FORTRAN-coded scientific applications(...like..um....SETI@home data or something) and manipulating the code to split everything up and send parts all over the cluster to be processed. Maybe I'm completely wrong, but Quake (for example) doesn't seem to work like that, and therefore would be unable to be run over a cluster. However, my idea requires having a few basically commercial applications running over the thing. Wether or not your question was serious, it gave me one of those "glimmer of hope" things you read so much about, especailly as I've been thinking about just dumping the whole thing in light of my looking into the subject.