[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnugo-devel] trevor_1_25.2
From: |
Trevor Morris |
Subject: |
[gnugo-devel] trevor_1_25.2 |
Date: |
Fri, 08 Feb 2002 10:30:11 -0500 |
Supercedes broken trevor_1_25.1
http://www.public32.com/games/go/trevor_1_25.2
- new function fastlib() helper for approxlib family.
- a pattern can now force the anchor point.
- matchpat can be run forcing anchor to be in the goal.
- simplification of UPDATE_SAVED_KO_RESULT
- reduce overhead in non-variadic macro TRACE definitions
- reduce MAXSTACK
- EXPERIMENTAL_READING code much more interesting.
- moved most of EXPERIMENTAL_READING code out of do_attack.
- [ox]lib request only up to MAX_LIBERTIES liberties.
Items of particular note:
Mkpat generates forced anchors for Q & Y (at colors O & X).
I find the new definition of UPDATE_SAVED_KO_RESULT esier
to understand. It is intended to be functionally identical.
The new TRACE & family definitions were motivated by the fact
that the VC profiler indicated 8% of time in DEBUG function call,
even with no debugging flags set.
With the reduced MAXSTACK, run-away reading code fails in
a trymove assert rather than overrunning the stack. The new
value ( MAX_BOARD * MAX_BOARD * 2 / 3 ) is still quite a bit deeper
than GNU Go should ever try.
I cleaned up the EXPERIMENTAL_READING code some, so it's not
sprinkled inside the non-experimental code.
The performance of the pattern-based reading code is surprisingly
good for the limitted effort I've put into it so far. Here's a
little comparison:
standard pattern-based
cputime 13.77 38.63
nodes 130191 241246
msec/node .106 .160
FAILS 0 5
PASSES 0 5
The number of nodes fluctuates wildly as I play with the patterns, but
the general msec/node value stays pretty constant at about .16 This
is actually on the high side, node-wise of what I've seen.
- [gnugo-devel] trevor_1_25.2,
Trevor Morris <=