

GraphLab: A New Parallel Framework For Machine Learning - achompas
http://graphlab.org/

======
bravura
In short, GraphLab is a parallel programming abstraction. It is slightly low-
level than MapReduce. Many algorithms can be written in a scalable way in the
GraphLab framework that, were they written in MapReduce, they would not scale
correctly. Which is to say that MapReduce is too high-level to implement many
useful data processing algorithms, but GraphLab is at the appropriate level of
abstraction.

I asked about GraphLab on MetaOptimize, and the authors of GraphLab gave some
high-level information:

[http://metaoptimize.com/qa/questions/285/when-should-you-
pre...](http://metaoptimize.com/qa/questions/285/when-should-you-prefer-
graphlab-over-mapreduce-and-vice-versa)

Note that this Q+A was done before the paper was published (but was based upon
the camera-ready). I believe that the code has matured since then, but it
might not yet be ready for production.

Joseph Gonzalez: "MapReduce is good for single-iteration and embarassingly
parallel distributed tasks like feature processing, while GraphLab is good for
iterative algorithms with computational dependencies or complex asynchronous
schedules. For instance, we find that GraphLab is highly suitable for Gibbs
sampling, EM-style algorithms and some classes of optimization algorithms.
Programs which fit well on a systolic abstraction (such as PageRank on Pregel)
will also work well with GraphLab. There are probably a lot more algorithms
that will fit well in the GraphLab and we are still exploring the capabilities
and implications of the abstraction (and whether further extensions will be
needed)."

~~~
achompas
Awesome, thanks for the pointer to MetaOptimize. I always forget to check
there for info.

------
achompas
Posted to see if anyone has experience working with GraphLab. Alternatively,
do any GL contributors frequent HN?

~~~
mjw
I sadly missed a talk by its creator last week :( It looks interesting as a
framework for parallelised algorithms where the dataflow isn't quite as
straightforward as MapReduce (quite common in machine learning). I may try and
use it for my dissertation actually. But no experience yet to speak of.

