Skip to Content.
Sympa Menu

charm - Re: [charm] State of the art in unstructured graphs in Charm++

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

Re: [charm] State of the art in unstructured graphs in Charm++


Chronological Thread 
  • From: Phil Miller <mille121 AT illinois.edu>
  • To: Laércio Lima Pilla <laercio.pilla AT ufsc.br>
  • Cc: charm <charm AT lists.cs.illinois.edu>
  • Subject: Re: [charm] State of the art in unstructured graphs in Charm++
  • Date: Mon, 15 Aug 2016 14:53:38 -0500

On Tue, Aug 9, 2016 at 4:48 PM, Laércio Lima Pilla <laercio.pilla AT ufsc.br> wrote:

Dear PPL people,

I would like to know if there have been any developments on working with [large] unstructured graphs in Charm++.

Hi Laércio,

There have been at least two substantial graph processing projects in Charm++ that I'm aware of. One is called "Coolname++", by Hassan Eslami, Erin Molloy, et al. It was presented at the 2015 Charm Workshop [1], and may have a paper in submission elsewhere. The other project is by Alexander Frolov, presented at this year's Charm Workshop [2]. I believe both groups would welcome conversation about those projects, or contemplating future collaboration to extend them.
 
For your specific technical questions, I'll try to provide what information I can. More details of your code's architecture and the trouble you've encountered would let us be much more helpful.

More precisely, I would like to know if anything has been done to

1) help handling different numbers of dependencies per chare; and to

Depending on your code's structure and needs, this might be addressed by simply keeping a message buffer and counter in each object, so they can each tell when their expectations have been fulfilled. SDAG code provides convenient syntactic wrapping around that kind of functionality.

2) do some lazy seed load balancing, where chares are created only when their first method call happens.

For plain chares, see the section of the Charm++ manual on "Seed Load Balancers" [3].

For chare array elements, see the manual section on "Demand Creation" [4].

Hopefully that all helps. Please feel free to email us further for elaboration, clarification, complaints, etc.

Sincerely,

Phil
[2] https://charm.cs.illinois.edu/workshops/charmWorkshop2016/slides/CharmWorkshop2016_ext_frolov.pdf
[3] http://charm.cs.illinois.edu/manuals/html/charm++/7.html#SECTION01670000000000000000
[4] http://charm.cs.illinois.edu/manuals/html/charm++/13.html#SECTION02426000000000000000



Archive powered by MHonArc 2.6.19.

Top of Page