Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: new engine command: "mem"

Author: Georg v. Zimmermann

Date: 00:32:42 08/07/02

Go up one level in this thread


On August 06, 2002 at 17:22:33, Dieter Buerssner wrote:

>I prefer to have it easier. Have one mem size for any adjustable internal tables
>besides TBs that are of possibly significant size and unadjustable tables that
>are of significant size. But still have another size for TBs. When I call my
>engine for analysis, I typically have (when dedicating my small memory old
>computer) 40 MBs for "mem" (besides the code space and often accessed internal
>data used). I use this for hash in a middlegame pos. In an endgame pos, I would
>use perhaps 30M. In both cases, I would give 2 M TB cache. In the first case,
>this would never be accessed. In the second case, it would be accessed, and also
>the internal compression tables, which make a bit more (with my few 5-men TBs
>installed). Then I still get about 7 M for OS-cache, which can speed up endgame
>analysis significantly (TB positions are cached there in compressed form, and
>for my conditions, this typically performs better than giving a bigger internal
>TB cache). So, I believe 2 memory sizes would be preferable.

I am not saying to throw out the "hash" command, I am suggesting to add a "mem"
command. That means that advanced users (like the programmers :) )can still set
the hash table the way they do now.

>Some other thoughts about the "base memory usage" of the engine. Say my engine
>includes a lot of "tools": for creating/manipulating books/PGN files/whatever.
>If this needs 1MB - do I have to count it? For (say) an engine match, that
>code/data won't be used - and can (and in tight memory situations will) be
>swapped out. No negative consequences at all. Should we count this unused
>memory? Not allways, using more RAM than available is bad - otherwise, we would
>not need virtual memory.

I agree that that is a problem. I would go for putting your tools into an extra
program. Or add a compile switch to include/exclude them.

>
>Say, the engine has some internal table for "learn stuff" - and this must be
>resized during a game. Should such a "mem" command really force the engine to
>now make the hash tables a bit smaller, and clear them by doing this?

If I know that I might need more memory for learning I have to use less hash in
the beginning. Doesnt that sound fair ?

>
>I believe, perfect fairness is not possible here - and one should have a more
>pragmatic and less strict solution.
>

Doesnt have to be a 100% solution. But when I see that people stress that each
engine got 32MB hash and one of them uses additional 32MB and the other one 1
additional MB that sounds odd, doesnt it ?

Greetings,

Georg



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.