[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [computer-go] Chains and liberties - performance



Evan Daniel wrote:
> It is rare that GNU Go cares about the locations of liberties
> when there are a lot of them.  For example, the tactics code
> never deals with strings with 5 or more liberties -- it calls
> them alive. ...

Agree, same for SmartGo.

> The point is that it's quicker to not bother tracking all
> liberties, because once there are a lot the program stops
> caring directly (for the most part), and so there is no
> point to keeping track.

This is what I question. Do you have performance data to back up that
statement? Since there will rarely be blocks that have more liberties than
you care to track, not keeping track will rarely save you anything. On the
other hand, having to check for that upper limit (probably several times
each move) adds branches to the program and slows it down a bit. It would be
interesting to know whether these two effects cancel each other out or
whether there's a small speedup to be had (at the cost of extra memory).

Anders Kierulf
www.smartgo.com


_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/