Skip to Content.
Sympa Menu

charm - Re: [charm] Delete a group

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

Re: [charm] Delete a group


Chronological Thread 
  • From: Jozsef Bakosi <jbakosi AT gmail.com>
  • To: Phil Miller <mille121 AT illinois.edu>, "charm AT cs.uiuc.edu" <charm AT cs.uiuc.edu>
  • Subject: Re: [charm] Delete a group
  • Date: Fri, 27 Jan 2017 15:32:06 -0700

It would allow me to save a pretty significant amount memory between setup and time-stepping, as I would not have to keep the data around used for setup.

( At this point, I'm looking into why I am running out of memory during that setup stage on a 128GB/node machine. I'd like to do away with that data if I can.)

Thanks,
J

On Fri, Jan 27, 2017 at 3:27 PM, Phil Miller <mille121 AT illinois.edu> wrote:
Ah, it seems I have that wrong. I implemented ckDestroy() specifically for chare arrays, but did not build the lower-level group destruction mechanism. If you need that, we can get it added. 

On Fri, Jan 27, 2017 at 4:20 PM, Jozsef Bakosi <jbakosi AT gmail.com> wrote:
That is what I assumed and was hoping for, however, that does not exist, not even groupProxy[i].ckDestroy(), not even ckdestroy(). Or I'm just not finding it...

On Fri, Jan 27, 2017 at 3:16 PM, Phil Miller <mille121 AT illinois.edu> wrote:
If you broadcast a ckdestroy() entry method invocation to the whole group, the element on each PE will be destroyed. I should double check, but I really hope we special-case that so that one cannot call ckdestroy() on just a single group element.

Code for this should look something like

CProxy_MyGroup groupProxy;

// . . . 

groupProxy.ckDestroy();

On Fri, Jan 27, 2017 at 4:10 PM, Jozsef Bakosi <jbakosi AT gmail.com> wrote:
Hi folks,

Here is a potentially easy question that I nevertheless fail to answer based on the online documentation.

If I no longer need a chare group, how do I delete all of its elements? (The goal is to call its destructors, thus freeing up memory.)

I see that CkDestroy() can be used to individually delete an element of a chare array and I presume the same might exist for groups so I can loop over them, but is there a simpler (and potentially more efficient) call to get rid of an entire group?

Thanks,
Jozsef







Archive powered by MHonArc 2.6.19.

Top of Page