Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Problems Probing

Author: Sune Fischer

Date: 07:56:49 10/22/02

Go up one level in this thread


On October 22, 2002 at 10:39:57, Daniel Clausen wrote:

>On October 22, 2002 at 10:13:11, Sune Fischer wrote:
>
>>I'm trying to implement support for the
>>Nalimov endgame tables and are having a minor(?) problem.
>>
>>By reading the source of Beowulf and the probe.txt file
>>I have managed to initialize the tables and probing is also
>>partly successful. It findes the table, but probing it
>>doesn't work:
>>
>>value = L_TbtProbeTable(iTB, colour, index);
>>if(value == L_bev_broken) return 0;
>>
>>I get the return here.
>
>Did you initialize with the call FTbSetCacheSize() first? I'm not sure at the
>moment, but I think I had a similar problem, and I forgot to initialize the
>cache. (I thought this is optional and I can do it later)
>
>Just an idea - maybe I'm completely wrong.
>
>Sargon

I think so, I pretty much pasted from Beowulf (cudos to Colin!)


/* Setup the data structures needed for the EGTB access code */
void InitialiseTB(void) {
  fprintf(stdout,"Checking for Tablebase Files\n");
  LargestTB = IInitializeTb(TB_PATH);
  if(LargestTB != 0) {
    void *TBCache = malloc(CACHE_SIZE);
    if (TBCache == NULL) {
      fprintf(stdout,"Not Enough memory for EGTBs!\n");
      LargestTB=0;
      return;
    }
    fprintf(stdout,"Including %d-man Endgame Table Bases\n", LargestTB);
    FTbSetCacheSize(TBCache, CACHE_SIZE);
  }
}

I used 2 MB cache, but there might be a problem because the task manager didn't
indicate any allocation of 2 extra megabytes.
"LargestTB" is the correctly spotted as 4 (since I don't have 5 man at the
moment), so something is working.

-S.



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.