Skip to Content.
Sympa Menu

charm - Re: [charm] groupproxy.ckLocalBranch()->

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

Re: [charm] groupproxy.ckLocalBranch()->


Chronological Thread 
  • From: "Kale, Laxmikant V" <kale AT illinois.edu>
  • To: Jozsef Bakosi <jbakosi AT gmail.com>, "charm AT cs.uiuc.edu" <charm AT cs.uiuc.edu>
  • Subject: Re: [charm] groupproxy.ckLocalBranch()->
  • Date: Mon, 1 Aug 2016 14:55:56 +0000
  • Accept-language: en-US

A group member accessed via vkLocalBranch() is, by definition, local (i.e. on the same PE) as the calling chare. Therefore, there is nothing else that is actually running at the same time on that core. So, it is threadsafe. (Now, it is possible that the group member you are calling is in the middle of a “threaded” entry method at that time, which has been suspended. But this is normal concurrency-within-the-object for threaded methods that your code has to handle. But since there is no other core involved, there are no complicated race conditions. )

 

 

Laxmikant (Sanjay) Kale         http://charm.cs.uiuc.edu

Professor, Computer Science     kale AT illinois.edu

201 N. Goodwin Avenue           Ph:  (217) 244-0094

Urbana, IL  61801-2302 

 

 

From: Jozsef Bakosi <jbakosi AT gmail.com>
Reply-To: Jozsef Bakosi <jbakosi AT gmail.com>
Date: Monday, August 1, 2016 at 9:20 AM
To: "charm AT cs.uiuc.edu" <charm AT cs.uiuc.edu>
Subject: [charm] groupproxy.ckLocalBranch()->

 

Hi folks,

 

Do I understand correctly, that if I call a member (non-entry method) function via

 

groupproxy.ckLocalBranch()->fn()

 

is NOT threadsafe? I.e., as opposed to if fn() was an entry method, which is guaranteed to execute exclusively in an object.

 

Thanks,

Jozsef




Archive powered by MHonArc 2.6.19.

Top of Page