Hi,

Am 21.09.2010 um 10:54 schrieb Mikael Lavoie:

> Sorry, but i get lost in what i wanna do, i have build a small home cluster 
> with Pelican_HPC, that user openMPI, and i was trying to find a way to get a 
> multithreaded program work in a multiprocess way without taking the time to 
> learn MPI. And my vision was a sort of wrapper that take C posix app src 
> code, and convert it from pthread to a multiprocessMPI app. But the problem 
> is the remote memory access, that will only be implemented in MPI 3.0(for 
> what i've read of it).
> 
> So, after 12 hour of intensive reading about MPI and POSIX, the best way to 
> deal with my problem(running a C pthreaded app in my cluster) is to convert 
> the src in a SPMD way.
> I didn't mentionned that basicly, my prog open huge text file, take each 
> string and process it through lot's of cryptographic iteration and then save 
> the result in an output.out like file.
> So i will need to make the master process split the input file and then send 
> them as input for the worker process.
> 
> But if you or someone else know a kind of interpretor like program to run a 
> multithreaded C program and convert it logically to a master/worker 
> multiprocess MPI that will be sended by ssh to the interpreter on the worker 
> side and then lunched.

what about taking a step back and use PVM? Of course you have no shared memory 
access, but it will allow you to transfer information between nodes and start 
worker processes:

http://www.netlib.org/pvm3/book/node17.html

Looks like PVM is no longer included in Pelican_HPC by default, but you can 
compile it on your own.

-- Reuti


> This is what i've tried to explain in the last msg. A dream for the hobyist 
> that want to get the full power of a night-time cluster, without having to 
> learn all the MPI syntax and structure.
> 
> If it doesn't exist, this would be a really great tool i think.
> 
> Thank you for your reply, but i think i have answered my question alone... No 
> Pain, No Gain...
> 
> On 20 Sep 2010, at 22:24, Mikael Lavoie wrote:
> > I wanna know if it exist a implementation that permit to run a single host 
> > process on the master of the cluster, that will then spawn 1 process per 
> > -np X defined thread at the host specified in the host list. The host will 
> > then act as a syncronized sender/collecter of the work done.
> 
> I don't fully understand you explanation either but I may be able to help 
> clear up what you are asking for:
> 
> If you mean "pthreads" or "linux threads" then no, you cannot have different 
> threads on different nodes under any programming paradigm.
> 
> However if you mean "execution threads" or in MPI parlance "ranks" then yes, 
> under OpenMPI each "rank" will be a separate process on one of the nodes in 
> the host list, as Jody says look at MPI_Comm_Spawn for this.
> 
> Ashley,
> 
> --
> 
> Ashley Pittman, Bath, UK.
> 
> Padb - A parallel job inspection tool for cluster computing
> http://padb.pittman.org.uk
> 
> 
> _______________________________________________
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users
> 
> _______________________________________________
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


Reply via email to