reef-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dhruv Mahajan <dhruv.maha...@gmail.com>
Subject Re: Understanding GroupCommunication terms
Date Thu, 16 Jun 2016 19:37:07 GMT
Hi Andrew,

So Julia is right. For a given group, a task represents one node only. But
then if the operators task is using are from different groups then it sort
of represents one node per group. Does that make sense?

Dhruv

On Thu, Jun 16, 2016 at 12:20 PM, Andrew Chung <afchung90@gmail.com> wrote:

> Seems like there are some differences in understanding here. @Dhruv could
> you verify that a reef task can or cannot contain multiple nodes?
>
> Thanks,
> Andrew
>
> On Thursday, June 16, 2016, Julia Wang (QIUHE) <Qiuhe.Wang@microsoft.com>
> wrote:
>
> > Short summary:
> > A group can have multiple operators
> > A group contains multiple nodes
> > A task can represent multiple nodes in multiple groups case. If there is
> > only one group, a task represents a node. That’s is current IMRU case.
> > Node is a concept in typology like a tree node
> > OperatorTopology is responsible for receiving/sending message for an
> > operator in a group. It knows the topology like parent and children.
> > sourceId and destId are for communication between nodes I believe
> > One task can have multiple operators.
> >
> > Julia
> >
> > -----Original Message-----
> > From: Dhruv Mahajan [mailto:dhruv.mahajan@gmail.com <javascript:;>]
> > Sent: Thursday, June 16, 2016 11:48 AM
> > To: dev@reef.apache.org <javascript:;>
> > Subject: Re: Understanding GroupCommunication terms
> >
> > Hi
> >
> > Please find answers inline.
> >
> > >
> > > 1. What is the relationship between group, operator, Node, and Task?
> > >
> >
> > A group consists of set of nodes/ evaluators that need to communicated
> > with each other. An operator like Broadast, Reduce, AllReduce specifies
> the
> > semantics of communication. Each node might be part of multiple groups.
> A
> > task can call these operators to get and send the values. So in that
> sense
> > when a task uses these operators task and node are sort of same thing.
> >
> >
> > > 2. Is `Node` a logical or a physical concept? i.e. can a REEF Task
> > > contain multiple Nodes? My understanding is that it is a logical
> > > concept.
> > >
> > Node is a logical concept. In general, One REEF task has one node only.
> In
> > my mind I cannot think of case where it would be otherwise.
> >
> >
> > > 3. What does an `OperatorTopology` represent? To me it seems like it
> > > represents a logical Node.
> > >
> > For doing these communications nodes are organized in particular topology
> > (flat where master connects to all other nodes, Binary tree: where nodes
> > are organized in a tree fashion, Binomial topology and so on). Each node
> > needs to communicate only to its children and parents during any operator
> > call (broadcast etc.). The OperatorTopology class defines the local
> > topology for the node (children and parent) and then provide lower level
> > functions to send and receive messages, do reduce on output of children
> > etc. Each operator has its own OperatorTopology class even though they
> > belong to same group (ideally we need only one OperatorTopology per
> group)
> >
> >
> > > 4. In `GroupCommunicationMessage`, what is are `sourceId` and
> > > `destId`? Are they a logical or a physical concept? Do they map to
> > > Nodes, Tasks, or operators?
> > >
> > Let me get back after looking at the code :)
> >
> >
> >
> > > 5. Can multiple operators reside on the same REEF Task? Multiple nodes?
> > > Multiple operators can reside on same REEF task. In ML its sort of
> > > common to do broadcast followed by reduce. Multiple groups also can
> > > reside on same task. Node and REEf-Task are one and the same thing. As
> > > I said earlier, I cannot think od the case when they will not be.
> >
> >
> >
> >
> > > Thanks!
> > > Andrew
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message