[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
speedups (was: Re: [gnugo-devel] Timing data)
From: |
Arend Bayer |
Subject: |
speedups (was: Re: [gnugo-devel] Timing data) |
Date: |
Mon, 25 Feb 2002 12:52:14 +0100 (CET) |
On Sun, 24 Feb 2002, Daniel Bump wrote:
>
> Arend wrote:
>
> > OTOH, I think there are still some speed-ups we can do in the short term.
>
> What do you have in mind?
1. Owl patterns should have a classification that can tell
"constraint is quick to evaluate". In this case, the constraint should
be evaluated before owl_safe_move is called. Consider e.g. VA24:
Pattern VA24
# gf New pattern. (3.1.14)
X* capture inside eyespace, not ko
:-,-,value(76)
A*
;lib(A)==1 && owl_eyespace(*,A) && olib(*) > 0
which gets matched geometrically quite often.
Maybe I'll do that today, it's only 5 lines of code plus selecting the
patterns.
2. I think pop_owl would be basically unnecessary if the owl_data is
directly written to and read from the stack. That'd save 3%. (I haven't
really checked whether this would work.)
3. The "Enhanced Transposition Cutoff" (that I briefly described in
http://mail.gnu.org/pipermail/gnugo-devel/2002-February/001337.html)
for the reading code and possibly also owl should also be doable. The
save could be anything between 5% and 25%.
Arend