Not logged inRybka Chess Community Forum
Up Topic Rybka Support & Discussion / Rybka Discussion / is hashsize meant as hashsize per core used?
- - By BenVanVlierden (***) Date 2008-08-11 00:29
I'm running Deep Rybka Aquarium on a Q9450 under win xp pro x64 with 4 GB of memory.

While analyzing a game with infinite analysis it seemed a good idea to me to give rybka some more space for hashtables. So I stopped the analysis, went to the engines section and changed the hashsize of the active rybka human from 32 to 1024.

Then I returned to the game I had opened from a database and resumed analysis. It took surprisingly long before anything happened, so I started windows taskmanager to see what was going on (if anything). I saw four Rybka processes, all slowly grabbing more and more memory, and never stopping until each thread had some 1,3 GB of memory. My guess was, that EACH THREAD got 1024 MB alotted for hashtables, instead of, as I expected, 1024 MB for all threads together.

I then cut the figure back to 256 MB, which runs fine, by the way.

I'm wondering though, is this the way it is meant to work?
Parent - - By Omega-three (**) Date 2008-08-11 07:18
Hi, in short the answer is yes. The quantity of hash that you set is per core. In your case I think the maximum you should set is 512mb. This is true in the chessbase gui and aquariums gui.

Regards

Mike
Parent - - By Vempele (Silver) Date 2008-08-11 07:40

> The quantity of hash that you set is per core.


Totally and utterly wrong. The cores share the hash.

Note Rybka uses 75MB (non-hash) per core for unknown purposes.
Parent - - By Linus (***) Date 2008-08-11 08:05
A related question: Can we chose any hash size with R3 now, or are we still restricted to powers of 2 like in R232?
Parent - By Vempele (Silver) Date 2008-08-11 08:09
Powers of 2.
Parent - - By BenVanVlierden (***) Date 2008-08-11 11:02
But how do you explain then that each of the four processes grew to 1,3 GB after I changed the hashsize? If what you say is true, hashtables are shared, and the setting in the engine-section of aquarium means the total hashsize of all processes together; but then apparently something goes fundamentally wrong with allocating the memory. And my guess is, that the error is on the Aquarium side because I tested this with Rybka 3 in Fritz 9 GUI and then only one thread changes size if you change the hashsize. (Which is why I posted this on the Aquarium forum in the first place).

Some of the crashes, slowdowns and losses on time in engine-engine play reported by Deep Aquarium users may be related with this issue.
Parent - - By Vempele (Silver) Date 2008-08-11 11:03

> But how do you explain then that each of the four processes grew to 1,3 GB after I changed the hashsize?


1GB of that is shared memory. Task Manager just reports it that way.
Parent - - By BenVanVlierden (***) Date 2008-08-11 11:57
I politely disagree. You don't seem to understand what's wrong. In F9 GUI with hashsize set to 512 MB I get this, which seems to me to be correct:



In Aquarium, hashsize set to 1024 MB I get this, 



which doesn't seem to be correct at all!
Parent - By Arkansaw (***) Date 2008-08-11 12:00
I think it's just a task manager display glitch, because I have 2G system ram and have been running IDeA with 1G hash for days, on and off I'm still doing other things with the comp...

I'm on E8400 btw..
Parent - - By Vempele (Silver) Date 2008-08-11 12:04
That must be a Task Manager bug. The GUIs set Rybka's hash size the same way: by sending setoption name Hash value number, so it can't have anything to do with the GUI.
Parent - - By BenVanVlierden (***) Date 2008-08-11 12:16
If it was a Taskmanager bug, it should also report the memory usage under F9 GUI falsely. Which it doesn't. I'm still convinced this is an Aquarium bug, and possibly the cause of some strange behaviour reported by Deep Aquarium users.
Parent - - By Vempele (Silver) Date 2008-08-11 12:31 Edited 2008-08-11 12:35
Not every bug occurs in an predictable, let alone obvious, pattern.

Incidentally, your second screenshot proves some of the memory is shared: otherwise, the Rybka processes would be using more memory than your whole computer is using at the time! Commit Charge: 3039M.
Parent - By BenVanVlierden (***) Date 2008-08-11 12:51
You're right about that; though there are certainly some issues with hashtables in Aquarium, this is not what it seems at first sight.

I'll guess I'll go back to the Aquarium forum and see what I can find concerning the freezing. Thanks anyway!
Parent - By BenVanVlierden (***) Date 2008-08-11 12:19
And, by the way, this occurs with infinite analyses (and possibly engine-engine play). I didn't test this with IDeA.
Parent - - By BenVanVlierden (***) Date 2008-08-11 12:30
With the same settings for hashsize using IDeA I get this picture:



This looks a little better, except that the engine freezes; as you see, no activity whatsoever (after more than seven minutes still no signs of life).
Parent - - By Arkansaw (***) Date 2008-08-11 12:44
I'm on IDeA too.....I see two processes using 1G each, like I said I only have 2G total
Parent - By BenVanVlierden (***) Date 2008-08-11 12:55
Yep, that's right. I can't see why it's reported correctly when I'm using Fritz 9, but it's definitely the Taskmanager reporting Falsely. I really thought I'd found a cause for some things going wrong ... :o)
Parent - - By Vasik Rajlich (Silver) Date 2008-08-11 20:40
The Windows task manager has a lot of very interesting features.

Vas
Parent - By Carl Bicknell (*****) Date 2008-08-11 20:48
you comedian

:)
Up Topic Rybka Support & Discussion / Rybka Discussion / is hashsize meant as hashsize per core used?

Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill