Skip to Content.
Sympa Menu

charm - [charm] charm++ pup, structured dagger, ckLocal

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

[charm] charm++ pup, structured dagger, ckLocal


Chronological Thread 
  • From: Jakub Homola <jakub.homola AT vsb.cz>
  • To: "charm AT lists.cs.illinois.edu" <charm AT lists.cs.illinois.edu>
  • Subject: [charm] charm++ pup, structured dagger, ckLocal
  • Date: Sun, 15 Sep 2019 15:10:16 +0200
  • Authentication-results: illinois.edu; spf=none smtp.mailfrom=jakub.homola AT vsb.cz; dkim=pass header.d=vsb.cz header.s=default; dkim=fail header.d=vsb.cz header.s=default; dmarc=none
  • Importance: normal

Hello,

I am learning to use Charm++ and would like to ask some questions which I haven’t found answers to.

 

Is implementing a pup method in a chare class or using the PUPbytes(myClass) macro mandatory? It seems to me like it should be, but I have not found such a statement in the manual nor any tutorial, nor anything about some default behaviour.

 

Are there any performance benefits when using Structured Dagger constructs compared to manually implementing the same functionality?

 

I have seen that function someProxy.ckLocal() returns a non-null pointer if the object corresponding to that proxy is on the same PE as the one calling the ckLocal function. Does it even make sense to implement some functionality around it, when that object can migrate immediately after the ckLocal function returned, making the returned pointer invalid? Or it is somehow possible to prevent it from migrating away for some time or something?

 

Thanks in advance for the answers,

Jakub Homola




Archive powered by MHonArc 2.6.19.

Top of Page