Laskos wrote:syzygy wrote:In general I can only advise against the use of RAM disks for storing TB files.
If you don't use a RAM disk, upon access the relevant parts of the TB files will be cached into RAM anyway in an area called the "page cache". Once certain data is in the page cache it will stay there even between engine restarts, unless the OS needs the RAM for something else.
If you use a RAM disk, there is less RAM left for the page cache. The OS will have to copy TB data from the RAM disk to the page cache, so everything uses RAM twice.
A very intelligent RAM disk implementation (forget about this on Windows, is my guess) might avoid this duplication and actually store files in the page cache. But even then it is likely that memory would be more efficiently used if you leave it to the OS to decide which TB files are needed in RAM.
With 16GB RAM and 0.5GB WDL for 5 men, I don´t think that´s a problem. Having a slow HDD and no SSD, I tried to optimize the 5 men Syzygy for heavy use, for example on 6 men won, hard positions.
That's why I started with "in general". In your specific case there is no problem and it may help to some extent to get a more stable testing environment.
Btw, on Linux the 5-piece tables can be preloaded into RAM with a simple:
Code: Select all
$ cat /path/to/tbs/??????.rtbw >/dev/null
or if vmtouch is installed:
Code: Select all
$ vmtouch -t /path/to/tbs/??????.rtbw
The vmtouch command has other useful applications, for example to find out how much of each table is cached in RAM:
Code: Select all
$ vmtouch -m 10G -v /path/to/tbs/*.rtbw
About cached chunks, for 6 men, isn´t it a bit unfair that Syzygy can load GBs of that freely, while Nalimovs use limited cache?
I'm not in any way in competition with Eugene Nalimov. The concept of "fairness" seems to be foreign to the present topic.
By the way, do you think Nalimovs on RAMDisk (with large cache) should perform better than Nalimovs on HDD? It´s for the first time, now, on RAMDisk, that I see a clear benefit of Nalimovs.
If you have (literally) more than enough RAM then sure, but in general no. Nalimov files are also cached in the page cache (and then separately decompressed in the engine's TB cache). Loading them on RAM disk will help during the first accesses (it will not take much time to copy some relevant parts from RAM disk into the page cache) but not in the long run (RAM available for the page cache will be much smaller).