Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] Open MPI task scheduler
From: Jack Bryan (dtustudy68_at_[hidden])
Date: 2010-06-20 18:17:34

Hi, thank you very much for your help.
What is the meaning of " must find a system so that every task can be serialized in the same form." What is the meaning of "serize " ?
I have no experience of programming with python and XML.
I have studied your blog.
Where can I find a simple example to use the techniques you have said ?
For exmple, I have 5 task (print "hello world !").
I want to use 6 processors to do it in parallel.
One processr is the manager node who distributes tasks and other 5 processorsdo the printing jobs and when they are done, they tell this to the manager noitde.

Boost.Asio is a cross-platform C++ library for network and low-level I/O programming. I have no experiences of using it. Will it take a long time to learn how to use it ?
If the messages are transferred by SOAP+TCP, how the manager node calls it and push task into it ?
Do I need to install SOAP+TCP on my cluster so that I can use it ?

Any help is appreciated.
June 20 2010
> Date: Sun, 20 Jun 2010 21:00:06 +0200
> From: matthieu.brucher_at_[hidden]
> To: users_at_[hidden]
> Subject: Re: [OMPI users] Open MPI task scheduler
> 2010/6/20 Jack Bryan <dtustudy68_at_[hidden]>:
> > Hi, Matthieu:
> > Thanks for your help.
> > Most of your ideas show that what I want to do.
> > My scheduler should be able to be called from any C++ program, which can
> > put
> > a list of tasks to the scheduler and then the scheduler distributes the
> > tasks to other client nodes.
> > It may work like in this way:
> > while(still tasks available) {
> > myScheduler.push(tasks);
> > myScheduler.get(tasks results from client nodes);
> > }
> Exactly. In your case, you want only one server, so you must find a
> system so that every task can be serialized in the same form. The
> easiest way to do so is to serialize your parameter set as an XML
> fragment and add the type of task as another field.
> > My cluster has 400 nodes with Open MPI. The tasks should be transferred b y
> > MPI protocol.
> No, they should not ;) MPI can be used, but it is not the easiest way
> to do so. You still have to serialize your ticket, and you have to use
> some functions that are from MPI2 (so perhaps not as portable as MPI1
> functions). Besides, it cannot be used from programs that do not know
> of using MPI protocols.
> > I am not familiar with RPC Protocol.
> RPC is not a protocol per se. SOAP is. RPC stands for Remote Procedure
> Call. It is basically your scheduler that has several functions
> clients can call:
> - add tickets
> - retrieve ticket
> - ticket is done
> > If I use Boost.ASIO and some Python/GCCXML script to generate the code, it
> > can be
> > called from C++ program on Open MPI cluster ?
> Yes, SOAP is just an XML way of representing the fact that you call a
> function on the server. You can use it with C++, Java, ... I use it
> with Python to monitor how many tasks are remaining, for instance.
> > I cannot find the skeletton on your blog.
> > Would you please tell me where to find it ?
> It's not complete as some of the work is property of my employer. This
> is how I use GCCXML to generate the calling code:
> You have some additional code to write, but this is the main idea.
> > I really appreciate your help.
> No sweat, I hope I can give you correct hints!
> Matthieu
> --
> Information System Engineer, Ph.D.
> Blog:
> LinkedIn:
> _______________________________________________
> users mailing list
> users_at_[hidden]
Hotmail is redefining busy with tools for the New Busy. Get more from your inbox.