Skip to Content.
Sympa Menu

charm - Re: [charm] AMPI automatic code transformation

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

Re: [charm] AMPI automatic code transformation


Chronological Thread 
  • From: Phil Miller <mille121 AT illinois.edu>
  • To: Maksym Planeta <mplaneta AT os.inf.tu-dresden.de>
  • Cc: charm <charm AT lists.cs.illinois.edu>
  • Subject: Re: [charm] AMPI automatic code transformation
  • Date: Fri, 21 Oct 2016 12:11:15 -0500

On Fri, Oct 21, 2016 at 11:44 AM, Maksym Planeta <mplaneta AT os.inf.tu-dresden.de> wrote:
Dear Phil,

thank you for quick response.

You're very welcome. More response in-line:
 

On 10/21/2016 06:30 PM, Phil Miller wrote:
This tool was never publicly released, because it was tightly bound to
particular versions of the Eclipse environment and the Photran add-on,
and too much work to forward port once it was developed.

However, I may be able to offer you a solid substitute. We have
developed a compiler-like tool based on the ROSE framework that can read
the source code to identify all of the relevant global variables. From
there, it can give you a list of source locations, and in many cases is
able to both generate patch files with a transformation or directly emit
transformed code.

Currently, I just wanted to compare AMPI vs MPI and for that I planned to port several benchmarks (NPB or miniapps). I will be happy to have any tool which makes porting smoother.

I believe we actually have ported versions of the NPB that we could readily share with you. We've also already ported and tested parts of the Mantevo suite and most of the Lawrence Livermore ASC proxy applications.

Is your end goal a benchmarking/performance analysis study, or evaluating AMPI for use in some larger application project? This sort of context can help inform how we can assist you.
 

The key questions to ask about your use case are
- What language is your code written in?

The language is most likely Fortran. Probably also C or C++, but these applications are not that important.

For the automated tooling, Fortran is a bit harder to deal with (there are more compiler-specific dialects and constructs in wide use). We would definitely want to try the tooling out, but can make fewer promises that it will work well on everything.
 
- What libraries (if any) does it rely on?

The benchmarks do not rely on any library.

- What kind of environment will you use to run it?

Which environment do you mean? We have SLURM at our site, if it is important.

Mostly, I wanted to distinguish between commodity clusters and more proprietary supercomputers, like IBM Blue Gene and Cray. The specialized systems have more quirks that make AMPI a bit harder to use. SLURM on a common Linux cluster is perfectly straightforward.

 

The tooling and runtime system support we have for this are all still
somewhat experimental. We would generally like to work with you to get
new applications up and running, so that we can learn what more needs to
be done to make the process easier and more robust.

Sincerely,

Phil Miller


On Fri, Oct 21, 2016 at 11:22 AM, Maksym Planeta
<mplaneta AT os.inf.tu-dresden.de <mailto:mplaneta AT os.inf.tu-dresden.de>>
wrote:

    Dear Charm++ developers,

    a paper called "Automatic MPI to AMPI Program Transformation using
    Photran" describes a tool which allows automatically transform MPI
    code into AMPI code.

    Unfortunately I did not manage to find this tool available online.

    I understand that paper is relatively old, but could you tell me if
    this tool is still possible to download?

    --
    With best regards,
    Maksym Planeta



--
Regards,
Maksym Planeta





Archive powered by MHonArc 2.6.19.

Top of Page