Skip to Content.
Sympa Menu

charm - Re: [charm] Projections question

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

Re: [charm] Projections question


Chronological Thread 
  • From: Ronak Buch <ronakbuch AT gmail.com>
  • To: Jozsef Bakosi <jbakosi AT lanl.gov>
  • Cc: "charm AT lists.cs.illinois.edu" <charm AT lists.cs.illinois.edu>
  • Subject: Re: [charm] Projections question
  • Date: Wed, 18 Dec 2019 18:02:52 -0600
  • Authentication-results: illinois.edu; spf=pass smtp.mailfrom=bluewall21 AT gmail.com; dkim=pass header.d=gmail.com header.s=20161025; dmarc=pass header.from=gmail.com

Hi Jozsef,

redn_wrapper_advance(CkReductionMsg*impl_msg) just denotes that advance was called via a reduction. It includes the unpacking of variables from the message after it's been received, but it doesn't include communication or synchronization costs.

Since advance() calls rhs() directly (as in not via a proxy), the time spent inside that call to rhs() is also attributed to it.

Thanks,
Ronak

On Wed, Dec 18, 2019 at 1:07 PM Jozsef Bakosi <jbakosi AT lanl.gov> wrote:
Hi folks,

I have a projections question: I have the following function names when I hover over "Usage Profile" or "Timeline" plots:

DiagCG::DiagCG_rhs and
DiagCG::redn_wrapper_advance(CkReductionMsg*impl_msg)

The corresponding code is the following (DiagCG is a chare array):

void
DiagCG::dt()
{
  // Contribute to minimum dt across all chares the advance to next step
  contribute( sizeof(tk::real), &mindt, CkReduction::min_double,
              CkCallback(CkReductionTarget(DiagCG,advance), thisProxy) );
}

void
DiagCG::advance( tk::real newdt )
{
  // Compute rhs for next time step
  rhs();
}

void
DiagCG::rhs()
{
  ...
}

I would like to know how to interpret the usage (percentage) associated to DiagCG::DiagCG_rhs and DiagCG::redn_wrapper_advance(CkReductionMsg*impl_msg). More specifically, what does the latter include in this case? The communication/synchronization costs of the all-to-all? Does it also involve what advance() calls, e.g., rhs()?

Please let me know if you need more information.

Thanks,
Jozsef



Archive powered by MHonArc 2.6.19.

Top of Page