Le 29 mars 2013 à 15:04, Maja Kabiljo <majakabi...@fb.com> a écrit :
> Hi Nicolas, > > You are right, using aggregators and master compute is the way to go. > Please take a look at > https://cwiki.apache.org/confluence/display/GIRAPH/Aggregators > to learn more about aggregators. From the MasterCompute.compute() you will > be calling haltComputation() when you decided it's time to do so. Thank you very much for that doc. For some reason I didn't found it previously. The implementation is indeed straight forward. I'll need now to test it. cheers, Nicolas > Please let me know if you have any questions. > > Maja > > On 3/29/13 3:16 AM, "Nicolas Lalevée" <nicolas.lale...@hibnet.org> wrote: > >> Hi, >> >> In my use case (implementation of affinity propagation) I want to halt >> the computation if at least of minimum of vertex has voted to halt. As >> far as I understand the default is to halt if all vertex has voted to >> halt and no messages are sent between vertices. But in my use case, even >> if a vertex has voted to halt, it must sent and receive message in case >> there is a next superstep. And with some of my data, some vertex makes a >> lot of superstep to converge and vote to halt. Which I don't care much if >> there are a little percentage of theses. >> >> My current implementation create a fake "master" vertex which is >> gathering the convergence of all vertices via messages. And once that >> master decide it is time to halt the computation, it sends a message to >> all vertices so they all halt. >> >> But I have seen some thread here about some master compute, I have seen >> some code about aggregators, so I guess there is some smarter way of >> implementing this ? >> >> Nicolas >> >