Re: Giraph vs good-old PVM/MPI ?

2013-08-06 Thread Claudio Martella
In principle you could implement (and it has been) Pregel through MPI. The
idea behind Pregel was precisely to factor out typical patterns of graph
processing that used to be based on message-passing and barriers. A
framework like Pregel/Giraph hides this complexity through a well-defined
API and programming pattern, leaving the user with only the application
logics. How the rest is implemented under the hood, is another story that
the user does not have to worry about.


On Tue, Aug 6, 2013 at 7:19 PM, Yang  wrote:

> it seems that the paradigm offered by Giraph/Pregel is very similar to the
> programming paradim of PVM , and to a lesser degree, MPI. using PVM, we
> often engages in such "iterative cycles" where all the nodes sync on a
> barrier and then enters the next cycle.
>
> so what is the extra features offered by Giraph/Pregel? I can see
> persistence/restarting of tasks, and maybe abstraction of the
> user-code-specific part into the API so that users are not concerned with
> the actual message passing (message passing is done by the framework).
>
> Thanks
> Yang
>



-- 
   Claudio Martella
   claudio.marte...@gmail.com


Re: Giraph vs good-old PVM/MPI ?

2013-08-06 Thread Yang
thanks !


On Tue, Aug 6, 2013 at 10:48 AM, Avery Ching  wrote:

> The Giraph/Pregel model is based on bulk synchronous parallel computing,
> where the programmer is abstracted from the details of how the
> parallelization occurs (infrastructure does this for you).  Additionally
> the APIs are built for graph-processing.  Since the computing model is well
> defined (BSP), the infrastructure can checkpoint the state of the
> application at the appropriate time and also handle failures without user
> interaction.
>
> MPI is a much lower level and generic API, where messages are send to
> processes.  Users must pack/unpack their own messages and deliver messages
> to the appropriate data structures.  Users must partition their own data.
>  As of MPI 2, the state of a failed process leaves the application in an
> undefined state (usually dead).
>
> Hope that helps,
>
> Avery
>
>
> On 8/6/13 10:19 AM, Yang wrote:
>
>> it seems that the paradigm offered by Giraph/Pregel is very similar to
>> the programming paradim of PVM , and to a lesser degree, MPI. using PVM, we
>> often engages in such "iterative cycles" where all the nodes sync on a
>> barrier and then enters the next cycle.
>>
>> so what is the extra features offered by Giraph/Pregel? I can see
>> persistence/restarting of tasks, and maybe abstraction of the
>> user-code-specific part into the API so that users are not concerned with
>> the actual message passing (message passing is done by the framework).
>>
>> Thanks
>> Yang
>>
>
>


Re: Giraph vs good-old PVM/MPI ?

2013-08-06 Thread Avery Ching
The Giraph/Pregel model is based on bulk synchronous parallel computing, 
where the programmer is abstracted from the details of how the 
parallelization occurs (infrastructure does this for you).  Additionally 
the APIs are built for graph-processing.  Since the computing model is 
well defined (BSP), the infrastructure can checkpoint the state of the 
application at the appropriate time and also handle failures without 
user interaction.


MPI is a much lower level and generic API, where messages are send to 
processes.  Users must pack/unpack their own messages and deliver 
messages to the appropriate data structures.  Users must partition their 
own data.  As of MPI 2, the state of a failed process leaves the 
application in an undefined state (usually dead).


Hope that helps,

Avery

On 8/6/13 10:19 AM, Yang wrote:
it seems that the paradigm offered by Giraph/Pregel is very similar to 
the programming paradim of PVM , and to a lesser degree, MPI. using 
PVM, we often engages in such "iterative cycles" where all the nodes 
sync on a barrier and then enters the next cycle.


so what is the extra features offered by Giraph/Pregel? I can see 
persistence/restarting of tasks, and maybe abstraction of the 
user-code-specific part into the API so that users are not concerned 
with the actual message passing (message passing is done by the 
framework).


Thanks
Yang




Giraph vs good-old PVM/MPI ?

2013-08-06 Thread Yang
it seems that the paradigm offered by Giraph/Pregel is very similar to the
programming paradim of PVM , and to a lesser degree, MPI. using PVM, we
often engages in such "iterative cycles" where all the nodes sync on a
barrier and then enters the next cycle.

so what is the extra features offered by Giraph/Pregel? I can see
persistence/restarting of tasks, and maybe abstraction of the
user-code-specific part into the API so that users are not concerned with
the actual message passing (message passing is done by the framework).

Thanks
Yang