# want to set up a cluster

## chiatello

well im not quite sure where this goes, but anyway

i want to set up a cluster on my home network mainly for my own entertainment but also id like to see if i could squeeze a little extra performance from my everyday apps (X, games, apache, etc)

so what type of programs should i go with... openMosix, beowulf?

or somethign else?

im completely ignorant on this subject, any help would be awesome

----------

## banadushi

 *chiatello wrote:*   

> well im not quite sure where this goes, but anyway
> 
> i want to set up a cluster on my home network mainly for my own entertainment but also id like to see if i could squeeze a little extra performance from my everyday apps (X, games, apache, etc)
> 
> so what type of programs should i go with... openMosix, beowulf?
> ...

 

Well if your just getting into clustering a Mosix type cluster is the easiest to set up.  Don't expect to see any better performace from X or games though.  They are too local hardware dependant type applications.  where you will see some cool stuff is with apache, mysql ... services.  Assuming you have a shared filesystem set up (AFS, Coda, GFS, or even NFS).

The cool thing about Mosix is it acts like a SMP machine, however many people do not under stand what that statement means.  It means that when a process forks it will migrate that fork accross the network and execute it on the node with the least amount of utilization.  Some people tend to think that they can just have a couple of machine, one with lots of ram, one with lots of storage, one with a tick out video card... etc.  And it will all mesh together into a super cool machine that can do anything.  Really not the case.

Settign up clustering is cool, and fun, you will learn a lot about how proceses execute and migrate through the cluster, but don't really expect to get any performace out of it as a desktop type system

Beowulfs are a totally different animal.  To set one of those up, you need to use special tools, and recompile your programs to use the cluster.  Its really a pain in the ass, if you ask me, but if your building a cluster for a specific task, it makes sense.

Have phun

Jason

----------

## chiatello

thanks for the reply

how does beowulf distribute the load?

----------

## chiatello

bump

----------

## chiatello

buump.... anyone?

----------

## pilla

 *chiatello wrote:*   

> thanks for the reply
> 
> how does beowulf distribute the load?

 

It does not. The programmer must distribute the load, or you can use a queueing system to run your programs.

----------

## captnjameskirk

As a jumping off point, you might want to look at 

http://www.supercluster.org

http://clustering.foundries.sourceforge.net/

 and the beowulf faq http://www.canonical.org/~kragen/beowulf-faq.txt

----------

## ctford0

 *chiatello wrote:*   

> thanks for the reply
> 
> how does beowulf distribute the load?

 

beowolfs are basically just a bunch of machine that utilize mpi programming whether it be mpich or lam-mpi.  The tools are more for running large numerical calculations than they are for you normal home user.  If you wanted to run Computation Fluid Dynamics code at home written in FORTRAN then you could reprogram the fortan code to take advantage of a beowolf cluster.

also a note on openmosix.  It can only migrate (move a process from one machine to another) if it isn't threaded.  Openmosix does not support threaded processes and will not migrate them.  It also does not handle shared memory; if I'm not mistaken.

chris

----------

## soma1992

Yup, ctford, you're right.  Openmosix (and mosix) will not work with programs that use shared memory.  That means that apache will NOT work with *mosix.  However, I do believe that openmosix has support for mpi if you wanna program with that.  I've done some work with openmosix and I've found it to be a lot of fun.  I set up around 4 or 5 pentium 1 machines that my school let me use and watching the processes distribute was cool  :Very Happy: .  The best thing about openmosix (in my opinion) is that you can run it on a network of (somewhat) heterogenious hardware.  That means that if you can set up a cluster using an athlon-xp machine and a pentium 1 machine.  As long as you're running the same kernel (ex. 2.4.20-openmosix) on all of the machines, your cluster should work.  There is also a knoppix project available http://bofh.be/clusterknoppix/ that looks very interesting.  You can pop in the CD on a computer that would be the master node and other machines would network boot off of it.

Anyway... good luck.

----------

## rumcajs78

 *banadushi wrote:*   

> 
> 
> The cool thing about Mosix is it acts like a SMP machine, however many people do not under stand what that statement means.  
> 
> Jason

 

Just a word about understanding what a SMP machine is. In SMP threads can migrate while on Mosix they can not. Fork migration? Very limited use for your custom applications.

In SMP you have shared memory, in Mosix you have distributed memory.

The difference is quite significant and that is what differs Mosix-like clusters from SMP machines.

Knowing that you know the limitations of Mosix.

 *Quote:*   

> i want to set up a cluster on my home network mainly for my own entertainment but also id like to see if i could squeeze a little extra performance from my everyday apps (X, games, apache, etc) 

 

forget it. a waste of money and time. better buy a faster single-cpu machine or a dual-cpu machine. form what you have enumerated - no way. unless you have a farm of apache webservers.

regards

rumcajs

----------

## tecknojunky

Sorry to bump this dying thread, but there are a few updates needed to be made.  First, there are students from India that succesfull implemented thead support into OpenMosix, but it did not made it yet to the official versions.  Patch are available and it is (I suppose) very experimental (remember, you are talking about shared memory here... not an easy feast when dealing with memory banks linked by wires).

Second, I played for a good while with OpenMosix.  Here is a pot-pourri of things I discovered (no particular order):

1- the performances gain are not that great for a normal system.

If I would estimate it, by guts feeling, it would be between 20-30% on average (I had two similar speed boxes).

2- OpenMosix is not very smart

My most blatent example...  bzip2 is a CPU hog.  OpenMosix evaluates that the process would run faster on the other CPU, so it migrates there.  The problem?  Now the migrated bzip2 has to read the file thrue the pipe, and write the uncompress result back.... waaaayyyy slower (way way way slower).

3- OpenMosix has patchs for the 2.4 kernel only.

4- Sometimes it will crash apps, but it is not obvious OpenMosix is the culprit.  So you search and research, until...

If I had to develop a distributed task, probably I'd simply write something that is forkable and run it on a network of OpenMosix-Knoppix booted machines.

If I want something more permanent, I'd definatly would try to learn Beowulf.

Now I have dropped it.  It did not gave the expected benefits I would have deemed worth it.  In the future, it will probably be better, or another genuis product will get out.

----------

## jago25_98

Openmosix is cool.

However, with a little organisation you can do things like:

- run your Window Manager on one machine and have it popup on another / seporate X processes on different boxes

- same with apache, sql etc

Of course it's not as cool and you have to switch logging into each machine but it can be nearly as seemless with:

- x magic cookies

- ssh passwordless logins

- shared filesystems; share /usr?

and so forth.

I'd also love to try mosix too though as a big website can use it well and getting around that without mosix is probably not ideal.

----------

## zayhen

Hey people!

I want to run a ScaLAPACK cluster in the laboratory I work as admin. DOes anyone know of any ebuild made to it? 

Does anyone have any expirence with Pelit in Gentoo? Any warning to give me?

Please, let me know if there's something I should know before proceeding. I think I will use BLACS ScaLAPACK and LAM-MPI. 

Do I need something more?

----------

