Use one History table per thread

This reduces contention and reduce history trashing
effect especially at high search depths.

No functional change for single CPU case.

After 999 games at 1+0 on Dual Core Intel we have

Mod vs Orig  +233 =526 -240  -2 ELO

We need to test at longer time controls and possibly with
a QUAD where we could foreseen an improvment.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
Marco Costalba
2009-06-02 10:20:41 +01:00
parent c1b60269a2
commit b4a04d8038
2 changed files with 16 additions and 15 deletions

View File

@@ -26,6 +26,7 @@
//// Includes
////
#include "history.h"
#include "lock.h"
#include "movepick.h"
#include "position.h"
@@ -73,6 +74,7 @@ struct Thread {
volatile bool idle;
volatile bool workIsWaiting;
volatile bool printCurrentLine;
History H;
unsigned char pad[64]; // set some distance among local data for each thread
};