Skip to Content.
Sympa Menu

charm - Re: [charm] Understanding AtSync and LBPeriod

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

Re: [charm] Understanding AtSync and LBPeriod


Chronological Thread 
  • From: Chris Wailes <chris.wailes AT gmail.com>
  • To: "Galvez Garcia, Juan Jose" <jjgalvez AT illinois.edu>
  • Cc: charm <charm AT lists.cs.illinois.edu>
  • Subject: Re: [charm] Understanding AtSync and LBPeriod
  • Date: Mon, 31 Jul 2017 12:47:13 -0400
  • Authentication-results: illinois.edu; spf=pass smtp.mailfrom=chris.wailes AT gmail.com

Juan,

That makes a lot of sense.  Thanks for clearing things up.  Now that I know what to look for I can see where this happens in the code.

- Chris

On Tue, Jul 25, 2017 at 11:43 AM, Galvez Garcia, Juan Jose <jjgalvez AT illinois.edu> wrote:

Hi Chris,

 

What you say is correct in that load balancing is triggered when all the local objects call AtSync and the LBPeriod timer expires.

 

But as far as blocking is concerned, AtSync is not really a blocking call, it’s just that the common application approach is for an object to stop executing after calling AtSync and to continue after ResumeFromSync.

 

-Juan

 

From: Chris Wailes
Sent: Monday, July 24, 2017 1:41 PM
To: charm
Subject: [charm] Understanding AtSync and LBPeriod

 

From my experimentation it appears that if you call AtSync() before the LBPeriod has elapsed, the application will block until the next load balancing period occurs.  So, if you start an application with an LBPeriod of 0.5 seconds and call AtSync() at 0.25 seconds, it will then block for the period from 0.25 to 0.5 seconds, invoke the load balancer at 0.5 seconds, and then return control to the application.

Is this a correct understanding of how AtSync and LBPeriod are related?

- Chris




Archive powered by MHonArc 2.6.19.

Top of Page