Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: calling subroutines

Author: Roberto Waldteufel

Date: 10:48:50 10/06/98

Go up one level in this thread



On October 06, 1998 at 13:21:57, Ernst A. Heinz wrote:

>On October 06, 1998 at 11:55:01, Roberto Waldteufel wrote:
>>
>>Have you tried both methods for comparison and chosen method 2, or have you not
>>tried method 1? I use method 1 and always have - I just assumed without testing
>>that passing the whole board data structure on the stack would be too >expensive.
>>Maybe I should have tested this out. Method 2 is cetainly easier to program
>>because you never need to unmake any moves. The question really is whether it >is
>>quicker to unmake moves or copy data.
>
>Let me again quote from my article about "How DarkThought Plays Chess". :-)
>
>******************************************************************************
>
>Search Parametrization
>
>[...]
>
>Data Structures.
>      Because most computers exhibit different behaviour as for memory
>      performance and cache sensitivity, DARKTHOUGHT contains distinct
>      implementations of many data structures accessed during the search.
>      First and foremost, you may choose between a single global board
>      modified by corresponding make/unmake-move operations and
>      stacked local boards that require no unmake after but copying prior to
>      the make-move operation during node expansion. Similarly, stacked
>      local move lists as opposed to a single global move list may be
>      selected. Although they feature much higher memory consumption,
>      the localized data structures will simplify any future parallelization
>      attempts. Last but not least, there exist several variations of history
>      tables with the piece-to-square formulation [99] used by default.
>
>*******************************************************************************
>
>Right now, we use the stacked local boards in connection with a global move
>list when running "DarkThought" on the Alpha-21164a. But on most any PC the
>stacked local boards are no good at all.
>
>=Ernst=

Hi Ernst,

I suspected this to be the case with PC's, but hadn't really considered how the
platform could affect the optimal method. I guess on an Alpha (or a Cray!) you
have more bandwidth to play with, so stacked boards become more attractive. Alas
I only have access to a single processor P II 333 machine, so I tend to limit my
ideas to that architecture instead of taking a broader view. I like your idea to
support both methods. That way the user can select the best settings for the
platform at run time.

Best wishes,
Roberto



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.