You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@giraph.apache.org by Nicolas Lalevée <ni...@hibnet.org> on 2013/04/03 00:50:22 UTC
Re: Custom halt condition
Le 29 mars 2013 à 15:04, Maja Kabiljo <ma...@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" <ni...@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
>>
>