Skip to Content.
Sympa Menu

charm - Re: [charm] how to suspend/resume a chare ?

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

Re: [charm] how to suspend/resume a chare ?


Chronological Thread 
  • From: Isaac Dooley <isaac AT isaacdooley.com>
  • To: Christian Perez <christian.perez AT inria.fr>
  • Cc: charm AT cs.uiuc.edu
  • Subject: Re: [charm] how to suspend/resume a chare ?
  • Date: Mon, 24 May 2010 16:00:47 -0500
  • List-archive: <http://lists.cs.uiuc.edu/pipermail/charm>
  • List-id: CHARM parallel programming system <charm.cs.uiuc.edu>

This is possible in a few different ways.

One is you can make m1 a [threaded] entry method. Then you make m2 a  [sync] entry method. Then when a() calls b.m2() it will suspend until m2 completes.

See the Charm manual for how these work: http://charm.cs.uiuc.edu/manuals/html/charm++/manual-1p.html
In particular see section 3.2.1

Or you could split m1 into two methods n1 and n2. The chare B would then invoke n2 on A once it does its thing.

Isaac

On Thu, May 20, 2010 at 3:58 AM, Christian Perez <christian.perez AT inria.fr> wrote:
Hello,

I'd like to know how to block a thread. Here is a simple version of what
I'd like to do:

Chare A:
  m1() {
    do some computation
    invoke method m2 on chare B
    wait for the completion of method m2
    do something else
  }

I've tried to use some callback mechanism but the problem is that
I can not split m1 in two :(

So, is there a wait to suspend the execution (and also how to resume it) ?

Thank you!

Christian Perez

_______________________________________________
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