charm AT lists.siebelschool.illinois.edu
Subject: Charm++ parallel programming system
List archive
- From: Ronak Buch <rabuch2 AT illinois.edu>
- To: Jozsef Bakosi <jbakosi AT lanl.gov>
- Cc: "charm AT lists.cs.illinois.edu" <charm AT lists.cs.illinois.edu>
- Subject: Re: [charm] Manual mode load balancing
- Date: Tue, 7 Aug 2018 14:12:00 -0500
- Authentication-results: illinois.edu; spf=pass smtp.mailfrom=rabuch2 AT illinois.edu; dmarc=pass header.from=illinois.edu
Yes, if you want to use AtSync mode, you put usesAtSync = true, and never call AtSync, you should get no migration. That's the strategy I'd take if I understand what you're trying to to. You may also want to use setMigratable(bool migratable), which can be called from an array element to mark it as migratable or not.
Yes, if you're using dynamic insertion, you should explicitly call CkStartLB() when your dynamic insertion is done and you want to balance load.
With bound arrays, you should have to call AtSync from every object, not just one of the bound objects.
On Tue, Aug 7, 2018 at 10:09 AM, Jozsef Bakosi <jbakosi AT lanl.gov> wrote:
Thanks Ronak,
I'm experimenting with periodic, atsync, as well as manual modes and
have some more questions:
If I want to use AtSync mode, am I correct that if I put 'usesAtSync =
true' into all of my chare array's constructors and never call AtSync(),
I should get no migration? (I'm trying to incrementally enable migration
for different chare arrays to hunt down a possible bug. Is this a good
strategy or there is a better one?)
The manual says that in periodic and AtSync modes I should not worry
about starting load balancing, only when I have array elements created
using dynamic insertion. Does that mean that I have to explicitly call
CkStartLB() when all my dynamic insertion is done?
If I have bound arrays, is it enough to call AtSync only from one of the
bound objects and not from the others?
Thanks,
Jozsef
On 08.06.2018 17:07, Ronak Buch wrote:
> The easiest way to do so, assuming you're using AtSync() for load
> balancing, is to merely not call AtSync() while you don't want to
> migrations to happen.
>
> With periodic load balancing, then yes, TurnManualLBOn() and
> TurnManualLBOff() should disable migration due to load balancing while
> manual load balancing is turned on. You should only have to call
> CkStartLB() if you do want to balance load while manual load balancing is
> enabled, so you shouldn't have to call it at all.
>
> Thanks,
> Ronak
>
> On Mon, Aug 6, 2018 at 4:29 PM, Jozsef Bakosi <jbakosi AT lanl.gov> wrote:
>
> > Hi folks,
> >
> > I would like to turn off load balancing (and migration) for a given
> > period.
> >
> > Should I just put TurnManualLBOn() and TurnManualLBOff() around which I
> > do not want migration and that's it?
> >
> > Do I also have to call CkStartLB()? What if I don't? If I do, where
> > should that be relative to the above two calls?
> >
> > Thanks,
> > Jozsef
> >
- [charm] Manual mode load balancing, Jozsef Bakosi, 08/06/2018
- <Possible follow-up(s)>
- Re: [charm] Manual mode load balancing, Ronak Buch, 08/06/2018
- Re: [charm] Manual mode load balancing, Jozsef Bakosi, 08/07/2018
- Re: [charm] Manual mode load balancing, Jozsef Bakosi, 08/07/2018
- Message not available
- Re: [charm] Manual mode load balancing, Ronak Buch, 08/07/2018
- Re: [charm] Manual mode load balancing, Jozsef Bakosi, 08/07/2018
Archive powered by MHonArc 2.6.19.