Puppy 245mpi cluster made easy

A home for all kinds of Puppy related projects
Message
Author
gcmartin

Slow Cluster Master

#21 Post by gcmartin »

whatupuppy wrote:Will the IBM slow down the cluster?
Short answer, YES.

Explanation you can measure yourself: Your workers will NEVER achieve 100% utilitzation on HPC problems and large workloads. Your Master will bottleneck in high workload environments.
whatupuppy wrote:Also, what can I do to help?
Why not still use the IBM, but make it a worker. His SCSI drives should be a benefit to certain types of workloads. Its a Win-Win!
2 Questions:
  1. I'm a big IBM fan, but for this requirement, why do you want to make the IBM your master?
  2. What kinds of work will you have your cluster doing?
whatupuppy wrote: My friend said he can lend me 6 - 1 gigabit network cards and a 1 - 24 ports 10gb router. I think that should help with communications between the computers.
This means you are already looking at a very good solution. The faster those cards, the better your cluster can move work and talk to each other.

Also, in your future, consider a SAN with 6 cables to your Cluster heads using 10GB cards to each cluster and you now would be entering the realm of "SuperHuman" HPCs. Couple with Parallel I/O filesystem, and you should be able to fly ... so to speak.

Hope this helps.
P.S. Don't forget my 2 questions, please. I have a personal application I'd like to run in your cluster once you're all set up. It should take about 1 cluster minute.
Last edited by gcmartin on Wed 26 Jan 2011, 07:43, edited 6 times in total.

Master_wrong
Posts: 452
Joined: Thu 20 Mar 2008, 01:48

#22 Post by Master_wrong »

I will have by the weekend:
(4) P4 2.4 - 1GB RAM w 20GB HD
(1 ) IBM R30 1.2 - 512MB RAM w 60GB HD
(1) Dell 8600 1.8 - 1GB RAM w 80GB HD

Will the IBM slow down the cluster?
yes, but its nice to experiment, try the flop.c program
Also, what can I do to help?

you can try blender ? with program mpir which i download from http://svat.sourceforge.net/
btw try use mpicc to compile the program

or would you compute chemical analisis...
http://classic.chem.msu.su/gran/gamess/

otherwise you can post your experiment on youtube or something, promote puppy :lol: :lol: :lol:

@gcmartin

thank you for the info... btw i also heard that if we really serious with cluster we also need to patch the kernel to maximize network speed... whatever it mean.
btw here is some info about parallel fs
http://blogs.sun.com/hstsao/entry/paral ... or_cluster
Attachments
mpir.c.zip
(5.89 KiB) Downloaded 283 times
Cluster-Pup v.2-Puppy Beowulf Cluster
[url]http://www.murga-linux.com/puppy/viewtopic.php?p=499199#499199[/url]

User avatar
acrocosm
Posts: 44
Joined: Sun 12 Sep 2010, 17:31
Contact:

#23 Post by acrocosm »

Master_wrong wrote: please try
grep -c ^processor /proc/cpuinfo
Gives 1
Master_wrong wrote: compared to
grep -c processor /proc/cpuinfo
Gives 2

What exactly does that mean?
gcmartin wrote:This is NOT an effort to hi-jack this thread.
How is helping and sharing knowledge hi-jacking? On the contrary... I'd consider myself with my limited knowledge and stupid questions more of a hi-jacker. In any case though I'd like to learn more and help if I can, it's an interesting project. So I'll stay around and occasionally bother you guys ^______^


Very interesting stuff. Personally I'm still just scratching the surface though. According to this shared RAM is out of the question. Is that right? Also apparently this won't actually make it act as one multiprocessor machine exactly, I'll still have to manually split the work somehow whether that's based on frames (explicitly for animation) or rows/blocks. hmmm, hmmm.

The machines I currently have available here are:
1 - Custom build Quadcore Q6600, 2GB DDR2 (master)
2 - X40 with 1.2 Pentium M, 1GB DDR (slave)
3 - Custom build Pentium 4 at 2.8 with HT, 1GB DDR (not joined yet)

There's a Pentium 4@2.4 and one more at 2.66, if I remember correctly, at my parents place, both with 512 DDR but those are in another city since my flat is too small to stock machines. If everything goes well I'll take them too.

Don't laugh, but I'm currently connecting them through wifi. I know it's bad performance wise, but I'm just testing and learning atm so it doesn't matter at all. That's why I don't care to add the other spare joined.

Anyway, maybe that's obvious for you guys but I run blender on the master off this 2-machine cluster just to see if it could see beyond the 4 cpus. It didn't but maybe it's the internal rendered that doesn't support mpi(?). I'll try yafaray or luxblend next and that svat thing, although it seems a bit scary ^_^

gcmartin

Personal view

#24 Post by gcmartin »

One way I view a cluster is as follows:
let's say I have 5 machines and one of them is the Master ("the entrance desk for the cluster")

I look at this as having 4 physically hungry dogs salivating, waiting, and looking for work. And you have this master whose job it is to throw the meat into the bin for the dogs to feed on. And, at the same time, the Master himself is salivating, looking to feed.

That's my idea of a cluster. Jobs go in and out thru the Master, while the dogs devour the feedings (work) and letting the Master know they're hungry again. Bigger the dog, less for the other guys.

IBM makes the baddest of the clusters. Univ. of Virginia has a Largest Mac Cluster in world. etc. There are clusters all over the world; large and small....just looks like another LAN machine.

A home cluster could let you do all sorts of things while on your home LAN. And there are Public Projects available that you can participate in which addresses all kinds of world problems from SETI to Space Station to Hubble to Water Shortages to Weather to monitoring community Biological Carbon Units activity. And can be used in Theory and Games. Wide Open!

Master_wrong
Posts: 452
Joined: Thu 20 Mar 2008, 01:48

#25 Post by Master_wrong »

What exactly does that mean?
that mean that we have to change the script to correct the error...

here try this script...
what is changed :
- fix counting the processor for some older computer
- makes really-really automatic ssh (no more typing yes answer)

<script moved to first post>
Last edited by Master_wrong on Tue 01 Feb 2011, 11:04, edited 1 time in total.
Cluster-Pup v.2-Puppy Beowulf Cluster
[url]http://www.murga-linux.com/puppy/viewtopic.php?p=499199#499199[/url]

User avatar
acrocosm
Posts: 44
Joined: Sun 12 Sep 2010, 17:31
Contact:

#26 Post by acrocosm »

Master_wrong wrote:
What exactly does that mean?
that mean that we have to change the script to correct the error...

here try this script...
what is changed :
- fix counting the processor for some older computer
- makes really-really automatic ssh (no more typing yes answer)
I'm afraid I still get the same results

Master_wrong
Posts: 452
Joined: Thu 20 Mar 2008, 01:48

#27 Post by Master_wrong »

Sorry,
here try this one

this one, the counting process is

process=`ssh -q -o BatchMode=yes -o StrictHostKeyChecking=no $i "grep -c ^processor /proc/cpuinfo"`

which from your answer should do the trick

@gcmartin...

I have found the nfs...
i will test them tommorow
Attachments
acrocosm.sh.zip
(1.1 KiB) Downloaded 401 times
Cluster-Pup v.2-Puppy Beowulf Cluster
[url]http://www.murga-linux.com/puppy/viewtopic.php?p=499199#499199[/url]

gcmartin

Practical use of cluster

#28 Post by gcmartin »

One problem 99% of all people will have with Clusters: "Give me a practical application that I can identify with". They cannot understand how to apply it.

Here's an application that should make it easy to understand. Here ONE method of applying it done by a vendor. I am NOT pushing their product; I am showing an example of what we should be looking and thinking here in Puppyland. Review this This is a very practical use.

This should now make it easier to understand and begin applying Clusters. Also, this is the basis of what Citrix does thanks to their modeling after IBM did this in the 90's.

Now what applications can we replicate or do in Puppyland Clusters...hmmm?
P.S. It occurs that if we could replicate something like this in a Puppy Cluster, we could run every PUP, every PET, every SFS, and everything in the cluster. Now, hmmmm...this is some real food for those Workers to feed on from the Master. Big Dogs versus Small Dogs rules will still apply, though. But, the work will be spread in a very interesting manner.
Last edited by gcmartin on Fri 28 Jan 2011, 20:58, edited 1 time in total.

User avatar
acrocosm
Posts: 44
Joined: Sun 12 Sep 2010, 17:31
Contact:

#29 Post by acrocosm »

Master_Wrong I'm sorry, I have to clarify...

The original scripts included on the iso would show 2 cpu for the x40 on the server. Both of your later auto-config scripts worked fine. The server would see just one cpu on the x40 as expected

However,

Code: Select all

grep -c processor /proc/cpuinfo
still gives 2 as a result.

Master_wrong
Posts: 452
Joined: Thu 20 Mar 2008, 01:48

#30 Post by Master_wrong »

However,
Code:
grep -c processor /proc/cpuinfo
still gives 2 as a result.
so there is no problem. because grep -c processor /proc/cpuinfo incorrectly count processor, your /proc/cpuinfo might contain word processor twice which resulted in wrong count. this is used in the first script.

about nfs...
check

http://murga-linux.com/puppy/viewtopic.php?t=45090

its working but we can only mount /mnt/sda, we only need to install nfs_common.tar.gz
Cluster-Pup v.2-Puppy Beowulf Cluster
[url]http://www.murga-linux.com/puppy/viewtopic.php?p=499199#499199[/url]

jpeps
Posts: 3179
Joined: Sat 31 May 2008, 19:00

#31 Post by jpeps »

acrocosm wrote:Master_Wrong I'm sorry, I have to clarify...

The original scripts included on the iso would show 2 cpu for the x40 on the server. Both of your later auto-config scripts worked fine. The server would see just one cpu on the x40 as expected

However,

Code: Select all

grep -c processor /proc/cpuinfo
still gives 2 as a result.
grep -c ^processor

gcmartin

Cluster applications

#32 Post by gcmartin »

IFF you are wondering how others have applied clusters, other than the one's I've mentioned earlier, look here for ways to use yours!
Hope this helps

Master_wrong
Posts: 452
Joined: Thu 20 Mar 2008, 01:48

#33 Post by Master_wrong »

@gcmartin
P.S. It occurs that if we could replicate something like this in a Puppy Cluster, we could run every PUP, every PET, every SFS, and everything in the cluster. Now, hmmmm...this is some real food for those Workers to feed on from the Master. Big Dogs versus Small Dogs rules will still apply, though. But, the work will be spread in a very interesting manner.
I dont think that using cluster will benefit all program, such as office suite etc they dont need that much processing power...
i believe that those computer that waiting idle in screensaver mode would be more useful if used as cluster. but not all program need cluster processing power.
Cluster-Pup v.2-Puppy Beowulf Cluster
[url]http://www.murga-linux.com/puppy/viewtopic.php?p=499199#499199[/url]

jpeps
Posts: 3179
Joined: Sat 31 May 2008, 19:00

#34 Post by jpeps »

Master_wrong wrote:
I dont think that using cluster will benefit all program, such as office suite etc they dont need that much processing power
Seems like office suite, etc., would need unique software to make use of clustering (i.e, that can run parallel tasks); doesn't make much sense for basic apps.

gcmartin

Mistaken understanding

#35 Post by gcmartin »

Master_wrong wrote:
P.S. It occurs that if we could replicate something like this in a Puppy Cluster ... .
I dont think that using cluster will benefit all program, such as office suite etc they dont need that much processing power...
i believe that those computer that waiting idle in screensaver mode would be more useful if used as cluster. but not all program need cluster processing power.
Thanks Master_wrong (and @jpeps too). I agree with you that today's Office Suite is NOT an application for clustering (and I don't believe I suggested it either).

The example I provided was one where someone has found a way to dispatch VMs as work in a cluster. That's novel, if it works as they suggest and is a greater way to throw workers at workload. I only threw that our way in Puppyland to inspire ideas for what can be accomplished in a Puppy cluster.

Hope this helps

Master_wrong
Posts: 452
Joined: Thu 20 Mar 2008, 01:48

#36 Post by Master_wrong »

Thanks Master_wrong (and @jpeps too). I agree with you that today's Office Suite is NOT an application for clustering (and I don't believe I suggested it either).
well...
you did said
we could run every PUP, every PET, every SFS,
,
which i reply
I dont think that using cluster will benefit all program, such as office suite etc
sorry if i make it sound you were suggesting it but office suite does packaged as pet and sfs.

btw if we see from this picture
http://pve.proxmox.com/wiki/File:Pve-vi ... chines.png

its not virtual, it seems real pc, however they they run virtual macine on each pc node.
so its not that we run 1 virtual machine on server that use cluster processors.

I already find software that monitor each node, but its not as polished as theirs.
Description:
------------
Gossimon is a gossip based distributed monitoring system for a cluster of
Linux nodes. Each node in the cluster periodically send information about
itself and others to a randomly selected node. This way each node constantly
receive information about cluster nodes. This information is locally
maintained (constantly updated) by each node and can be used by various
clients.
Cluster-Pup v.2-Puppy Beowulf Cluster
[url]http://www.murga-linux.com/puppy/viewtopic.php?p=499199#499199[/url]

Master_wrong
Posts: 452
Joined: Thu 20 Mar 2008, 01:48

#37 Post by Master_wrong »

This is my code to enable nfs,
192.168.2.130 is server
192.168.2.118 is client

http://murga-linux.com/puppy/viewtopic.php?t=45090

we only need to install nfs_common.tar.gz from above site, in the end both server and client will be able to access /mnt/my.


(already included at the 1st post)

####NFS ---need nfs_common.tar.gz only
### change drive="sda1" to your mounted device
## please create ~/my-applications/clusterdata/ip-list which contain list of ip
#need passwordless ssh

drive="sda1"
mm=`head -n 1 ~/my-applications/clusterdata/ip-list`
m=`echo ${mm/ /}`
echo "M="$m

rm /etc/exports
echo "/mnt/$drive *(rw,no_root_squash,no_subtree_check,sync)" >>/etc/exports
modprobe nfsd
/etc/rc.d/rc.nfsd start
x="mount-FULL -t nfs $m:/mnt/$drive /mnt/my "
echo "x="$x
for i in `cut --delimiter=: -f1 ~/my-applications/clusterdata/ip-list`;do ssh $i "mkdir /mnt/my"; ssh $i "modprobe nfs";ssh $i "/etc/rc.d/rc.portmap start";ssh $i $x;done
####NFS
Last edited by Master_wrong on Tue 01 Feb 2011, 11:14, edited 1 time in total.
Cluster-Pup v.2-Puppy Beowulf Cluster
[url]http://www.murga-linux.com/puppy/viewtopic.php?p=499199#499199[/url]

Master_wrong
Posts: 452
Joined: Thu 20 Mar 2008, 01:48

#38 Post by Master_wrong »

Although i did not agree gcmartin vision about possibility running all program using cluster, i make some research and put them here, i hope someone could use them...
from http://www.open-mpi.org/faq/?category=running
12. Can I run non-MPI programs with mpirun / mpiexec?
Yes.

Indeed, Open MPI's mpirun and mpiexec are actually synonyms for our underlying launcher named orterun (i.e., the Open Run-Time Environment layer in Open MPI, or ORTE). So you can use mpirun and mpiexec to launch any application. For example:

shell$ mpirun -np 2 --host a,b uptime

This will launch a copy of the unix command uptime on the hosts a and b.
Other questions in the FAQ section deal with the specifics of the mpirun command line interface; suffice it to say that it works equally well for MPI and non-MPI applications.
i know its open-mpi, but it s the same implementation, we can try...
we also have mpir..
or we can just run ssh to each computer and run the program
like these

# for i in `cut --delimiter=: -f1 ~/mpd.hosts`;do ssh $i "ls /mnt/my/$i";done

if we need to do blender, we can use nfs then create folder on master node with the name of the ip.
then set to run blender using the folder.

so the folder on master node will will look like these
/mnt/my/192.168.2.130/
/mnt/my/192.168.2.118/
/mnt/my/192.168.2.122/
the picture that needed to blended and the result will be saved into that folder, so each folder will contain different picture.

from http://wiki.blender.org/index.php/Doc:M ... ne_Options
In some situations we want to increase the render speed, access blender remotely to render something or build scripts that use blender command line.

One advantage of using command line is that we don't need the X server (in case of Linux) and as a consequence we can render remotely by SSH or telnet.

next...
run python program on mpi
http://sourceforge.net/projects/mpy/fil ... z/download
Cluster-Pup v.2-Puppy Beowulf Cluster
[url]http://www.murga-linux.com/puppy/viewtopic.php?p=499199#499199[/url]

gcmartin

Mistaken understanding

#39 Post by gcmartin »

Master_wrong wrote:
Thanks Master_wrong (and @jpeps too). I agree with you that today's Office Suite is NOT an application for clustering (and I don't believe I suggested it either).
well...
you did said
we could run every PUP, every PET, every SFS,
, which i reply
I dont think that using cluster will benefit all program, such as office suite etc
sorry if i make it sound you were suggesting it but office suite does packaged as pet and sfs.

btw if we see from this picture
http://pve.proxmox.com/wiki/File:Pve-vi ... chines.png

its not virtual, it seems real pc, however they they run virtual macine on each pc node. so its not that we run 1 virtual machine on server that use cluster processors.

I already find software that monitor each node, but its not as polished as theirs.
Yeah, I can see how this was misleading. Newspapers are constantly taking a quote out of context. When I made that quote (look at the whole passage), I was making it meaning to have whole OS's run and their services being delivered from the internal OS's. So, for example, if I dispatched a OS as a cluster application, whatever internal services that OS provides could be available via that OS....not the cluster directly...internal from the OS. In the case of Puppy (an OS), I would have services (PET/SFS) within it available.

On the item of PROXMOX, I agree without lifting the covers on how they achieved their implementation, it might not be a cluster; but it they are, in fact, clustering, then they have an implementation where we can draw upon for understanding and for future Puppy implementations.

Here's the kind of idea that one can draw: Physical Cluster with Virtual machines running with some virtual Machines actually being a cluster with other virtual machines with ... I think everyone can see where this leads to... you know physical to virtual to virtual to... alongside other "real" individual cluster applications being globbled up by physical and virtual cluster machines.

Anyway, you have made a very promising contribution to the Puppy community thus far. And I applaud your achievement!

Hope this helps

Master_wrong
Posts: 452
Joined: Thu 20 Mar 2008, 01:48

#40 Post by Master_wrong »

Yeah, I can see how this was misleading. Newspapers are constantly taking a quote out of context. When I made that quote (look at the whole passage), I was making it meaning to have whole OS's run and their services being delivered from the internal OS's. So, for example, if I dispatched a OS as a cluster application, whatever internal services that OS provides could be available via that OS....not the cluster directly...internal from the OS. In the case of Puppy (an OS), I would have services (PET/SFS) within it available.
:oops:
i guess.. forgive me for being me.... ?

but i guess that would be too difficult to implement. then again i could be me ? :lol:

btw i just read this...
What is a beowulf cluster or Beowulf cluster vs Supercomputer

Beowulf cluster is essentially a number of commodity or of the
shelf PCs tied together using some sort of protocol. Developed
by NASA, Beowulf clusters gained much attention in the last few
years. Often at a fraction of a cost of a "real" supercomputer
a beowulf cluster is comparable (or even exceeds) the
computational power of a super computer. For instance the a
cluster made out of 320 ubiquitous P3-800 CPUs takes 34th place
on the TOP500 super computer list with peak performance of over
a teraflop!
ok has anyone have 320 p3 computer to test ? :roll:
Cluster-Pup v.2-Puppy Beowulf Cluster
[url]http://www.murga-linux.com/puppy/viewtopic.php?p=499199#499199[/url]

Post Reply