Skip to Content.
Sympa Menu

charm - Re: [charm] Obtaining Charm++ profile

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

Re: [charm] Obtaining Charm++ profile


Chronological Thread 
  • From: Ronak Buch <rabuch2 AT illinois.edu>
  • To: Rob Van der Wijngaart <robv AT nvidia.com>
  • Cc: "charm AT cs.illinois.edu" <charm AT cs.illinois.edu>
  • Subject: Re: [charm] Obtaining Charm++ profile
  • Date: Tue, 5 Jun 2018 17:08:57 -0500
  • Authentication-results: illinois.edu; spf=pass smtp.mailfrom=rabuch2 AT illinois.edu; dmarc=pass header.from=illinois.edu

No, we don't have a good description of the record format right now other than the source code that generates it in Charm (src/ck-perf/trace-projections.C) and the source code that parses it in Projections (GenericLogReader.java). I'll provide a brief summary below, but if there's something specific that you want, I can explain it.

In general, each line in the Projections log file represents a specific event. The ones that you're probably interested in are those beginning with 2 or 3, which represent BEGIN_PROCESSING and END_PROCESSING events (the start and end of entry methods). The third field in those lines represents the entry ID, which can be converted a function name by using the sts file (in which ENTRY CHARE lines provide a mapping between an entry ID and the actual name of the entry method). The fourth field represents the timestamp of the event (so the difference between the two values in this position for corresponding BEGIN_PROCESSING and END_PROCESSING events is the total time of the entry method). The sixth value is the PE, which indicates which PE served as that event's source. The seventh field for BEGIN_PROCESSING events is the message length.

Hopefully that helps.

Thanks,
Ronak

On Tue, Jun 5, 2018 at 4:38 PM, Rob Van der Wijngaart <robv AT nvidia.com> wrote:

OK, I got my .log, .sts, and .projrc files for my run! Next question, if you don’t mind. I know of Projections, but I’d like to use my own graph analysis tools to parse the log files. Is there a description of the records in the .log and .sts files? Thanks!

 

Rob

 

From: Rob Van der Wijngaart
Sent: Tuesday, June 5, 2018 2:11 PM
To: 'Ronak Buch' <rabuch2 AT illinois.edu>
Cc: charm AT cs.illinois.edu
Subject: RE: [charm] Obtaining Charm++ profile

 

Thanks, Ronak!

 

Rob

 

From: Ronak Buch <rabuch2 AT illinois.edu>
Sent: Tuesday, June 5, 2018 2:05 PM
To: Rob Van der Wijngaart <robv AT nvidia.com>
Cc: charm AT cs.illinois.edu
Subject: Re: [charm] Obtaining Charm++ profile

 

You built Charm++ with the correct flag ("--enable-tracing"). The issue is that the application, when linked, needs the "-tracemode projections" flag.

 

Specifically, if you're building NAMD (as you seem to be), you can just run "make projections," which includes the "-tracemode projections" flag already.

 

Thanks,

Ronak

 

 

On Tue, Jun 5, 2018 at 12:47 PM, Rob Van der Wijngaart <robv AT nvidia.com> wrote:

Hello Team,

 

I am trying to obtain a profile of a NAMD run using Charm++. I built Charm++ this way:

./build charm++ multicore-linux64 gcc --with-production --enable-tracing -j40 -tracemode summary

According to the man page I should now automatically obtain a profile if I run the application like this:

./namd-2.13-multicore-cuda +traceroot $PWD +p32 +setcpuaffinity +pemap 0-31 +devices 0,1,2,3 stmv/stmv.namd

However, I do not see any profile. If I then add +sumonly to the command line, I get this error message:

WARNING: +sumonly is a command line argument beginning with a '+' but was not parsed by the RTS.

If any of the above arguments were intended for the RTS you may need to recompile Charm++ with different options.

So it appears I did not build Charm++ properly to support tracing. Can you tell me how to do it right?

Second, I am actually interesting in doing projections, not obtaining a summary profile, but I do not understand this instruction in the manual:

Link time option: -tracemode projections

After all, I only issue a build command to create the runtime, with no explicit link calls issued. Can you advise?
This concerns v6.8.2, which I obtained as a tar ball.

Thanks,
Rob

 

 


This email message is for the sole use of the intended recipient(s) and may contain confidential information.  Any unauthorized review, use, disclosure or distribution is prohibited.  If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message.


 





Archive powered by MHonArc 2.6.19.

Top of Page