Skip to Content.
Sympa Menu

charm - Re: [charm] Charm++ discussion

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

Re: [charm] Charm++ discussion


Chronological Thread 
  • From: Eric Bohm <ebohm AT uiuc.edu>
  • To: Naresh_Hanumanthakari <Naresh_Hanumanthakari AT satyam.com>
  • Cc: Filippo Gioachin <gioachin AT uiuc.edu>, charm AT cs.uiuc.edu, Gengbin Zheng <gzheng AT ks.uiuc.edu>
  • Subject: Re: [charm] Charm++ discussion
  • Date: Tue, 08 May 2007 09:14:22 -0500
  • List-archive: <http://lists.cs.uiuc.edu/pipermail/charm>
  • List-id: CHARM parallel programming system <charm.cs.uiuc.edu>

Naresh_Hanumanthakari wrote:
Hello there,
I have some queries. Kindly help.
1. Suppose we are running our server application as follows:
./charmrun +p2 ./server ++local ++server-port 1300
Now, if we run two clients each of them as ./client 192.168.1.1 1300
Is the server able to handle this two clients parallely (as two processors are running the server, can each of them handle a different client?)
The command line shown will launch 2 processes, but I think only 1 of them will be listening on the converse-client-server port. Converse-client server protocol is designed to allow external programs to communicate with parallel applications, usually issuing status requests or injecting commands. This communication is not in itself parallelized across all processes by allowing distinct connections to each one.

2. Are we able to write networking application (say client-server program) using Charm++ without the help of Converse?
The communication methods in Charm++ (remote object invocation through sending messages) use Converse to manage network communication. There is nothing forbidding you from writing a Charm++ (or Converse) program which binds to a socket and doing its own management of the interface if support for non charm client application network clients is desired.
3. If Converse is separate from Charm++, why are we compiling a Converse application under Charm++ environment (using CHARMC)? Moreover, if Converse is not a language then why do we need to specify as - language converse++ for compiling our application?

They both use the same compiler wrapper in charmc because there was no value in making a symlink of it named conversec.

4. Is Converse simply like MPI from functional perspectives?
Converse provides most of the same services as MPI with the following advantages: converse understands threads, converse allows multiple language modules to run concurrently, converse is modularly designed to support new language development.

5. Where do we find the clear distinction between Converse and Charm++?
Converse has no awareness of objects. It transfers messages across processors and your registered handler must cope with further distinctions. Charm++ supplies a ready made handler to route messages to specific objects, to schedule their execution, to migrate them, to monitor their load, and to distinguish between local and remote.

6. Consider the following client code segment:
for(i=0;i<CcsNumPes(&svr);i++)
{
char *senddata="HELO";
CcsSendRequest(&svr,"Handler",i,strlen(senddata)+1,senddata);

I want to know how it work internally if we specify +p3 while running this
client.
I am forwarding your last question to those more expert in converse client server.

Thanks & Regards
Naresh Babu H
Software Engineer,
Satyam Computer Services Ltd,
Bangalore Lanqford Avenue,
Bangalore.
ph:+91 9886424203


DISCLAIMER:
This email (including any attachments) is intended for the sole use of the
intended recipient/s and may contain material that is CONFIDENTIAL AND
PRIVATE COMPANY INFORMATION. Any review or reliance by others or copying or
distribution or forwarding of any or all of the contents in this message is
STRICTLY PROHIBITED. If you are not the intended recipient, please contact
the sender by email and delete all copies; your cooperation in this regard is
appreciated.
_______________________________________________
charm mailing list
charm AT cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/charm





Archive powered by MHonArc 2.6.16.

Top of Page