Could someone please explain what exactly is happening in the scatter phase here? I am not very clear about it.
dsaksena
prevval in void apply(...) is actually the oldval. We do the scattering only if perform_scatter is 1.
If the difference between oldval and newval is smaller than 1E-3 we make perform_scatter = 0 and stop calling scatter function (by returning graphlab::NO_EDGES).
sanchuah
When a node updates it's pagerank in apply(), it will check whether the difference between old pagerank and new pagerank is large enough to have next round of computation. If yes, the node will still propagates(scatters) its pagerank to it's neighbor and signal them to update their pagerank value; otherewise, it will stop.
Could someone please explain what exactly is happening in the scatter phase here? I am not very clear about it.
prevval in void apply(...) is actually the oldval. We do the scattering only if perform_scatter is 1.
If the difference between oldval and newval is smaller than 1E-3 we make perform_scatter = 0 and stop calling scatter function (by returning graphlab::NO_EDGES).
When a node updates it's pagerank in apply(), it will check whether the difference between old pagerank and new pagerank is large enough to have next round of computation. If yes, the node will still propagates(scatters) its pagerank to it's neighbor and signal them to update their pagerank value; otherewise, it will stop.