Skip to Content.
Sympa Menu

charm - Re: [charm] [ppl] Vectors in Charm++

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

Re: [charm] [ppl] Vectors in Charm++


Chronological Thread 
  • From: Phil Miller <mille121 AT illinois.edu>
  • To: Nasim Muhammad <naseem8442 AT hotmail.com>
  • Cc: Charm Mailing List <charm AT cs.illinois.edu>
  • Subject: Re: [charm] [ppl] Vectors in Charm++
  • Date: Sun, 13 May 2012 15:38:14 -0500
  • List-archive: <http://lists.cs.uiuc.edu/pipermail/charm>
  • List-id: CHARM parallel programming system <charm.cs.uiuc.edu>

Hi Nasim,

Please describe what you're trying to accomplish - what phenomena
you're simulating, and the parallel algorithm you intend to use for
that simulation. If there are design issues to be addressed, it's
important to get those worked out before building an incorrect
implementation.

Your message seems to mix up parallel objects, or chares, which are
explicitly distributed across processors in a machine or cluster, and
the data they each contain.

Phil

On Sun, May 13, 2012 at 3:29 PM, Nasim Muhammad
<naseem8442 AT hotmail.com>
wrote:
> Hi,
>
> I am again starting my project and really would like your help. This time I
> will try to include every detail. If you can provide the better approach, I
> would really appreciate.
>
> I am creating 20,000 objects initially which will grow and die over a
> period of time on 8 processors. This number increases to millions over a
> period of one year. Since I don't know in advance about number of objects,
> I am using CkVec to store my objects. Now I know that  charm++ dynamically
> create objects on different processors.
>
> Master object at processor 0 is responsible for creating all objects. My
> objects which runs on different processors send signals to Master, such as
> object dies or lives after some time. Once master object receives signals
> from all existing objects, it deleted died objects, and create new objects.
> After this it ask every object to perform various tasks and report back as
> dead or alive. My objects do not communicate with each other, they
> communicate with only master object.
>
> I am also curious about few things:
>  I found that it creates more objects at processor 0 than compare to
> others. For example, if I create 125 objects at 4 processors then 50 will
> be at processor zero and 25 each on other processors (approximately). Since
> my master object receives signals, is it not good to leave processor zero
> for communication purpose and create objects on rest of others. But how to
> do this?
>
> If you can provide the contact number, I can call you to discuss the
> problem at your convenience.
>
> Thanks,
>
> Nasim
>
>
>> -----Original Message-----
>> From:
>> unmobile AT gmail.com
>>
>> [mailto:unmobile AT gmail.com]
>> On Behalf Of Phil
>> Miller
>> Sent: March-23-12 11:38 AM
>> To: Nasim Muhammad
>> Cc: Charm Mailing List
>> Subject: Re: [ppl] Vectors in Charm++
>>
>> On Mon, Feb 6, 2012 at 10:02, Nasim Muhammad
>> <naseem8442 AT hotmail.com>
>> wrote:
>> > I am creating objects and storing in a vector. I don’t know in advance
>> > that how many objects I need to create and there is addition and
>> > deletion of those objects throughout my simulation. Therefore I can’t
>> > use fixed dimensional array. Let’s say, If I create those objects on
>> > processor 0 and submit my job on 4 processors then how would I
>> > distribute them on other processors?
>> >
>> > I am looking for a sample code or something that might help. I am
>> > stuck at the moment and need your help.
>>
>> Hi Nasim,
>>
>> Charm++ supports dynamically creating parallel objects and
>> distributing them among the processors in a system. Unless one tells it
>> specifically where to create a new chare, it actually distributes them
>> across all
>> available processors by default.
>>
>> What is the structure of your parallel algorithm? Is there a master object
>> that
>> spawns tasks and waits for them complete? Assuming a master-worker
>> paradigm, do the worker tasks ever need to communicate with each other,
>> or just the master? Will the master ever 'broadcast'
>> to the existing task objects, or just communicate with them individually?
>>
>> The more you tell us about your planned application, the more we can be of
>> help.
>>
>> Phil
>





Archive powered by MHonArc 2.6.16.

Top of Page