From df0135e11e9ea3dd0acab94fdf437451ef7e522b Mon Sep 17 00:00:00 2001 From: Scott Gasch Date: Wed, 26 Aug 2026 06:58:26 -0700 Subject: Make EVAL_HASH optional. --- src/chess.h | 2 +- src/evalhash.c | 13 ++++++++++--- src/main.c | 8 +++++++- 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/src/chess.h b/src/chess.h index 8861ef1..e47279d 100755 --- a/src/chess.h +++ b/src/chess.h @@ -947,7 +947,7 @@ typedef struct _PLY_INFO } PLY_INFO; -#define EVAL_HASH +// #define EVAL_HASH #ifdef EVAL_HASH #define EVAL_HASH_TABLE_SIZE (2097152) // 32Mb (per thread) diff --git a/src/evalhash.c b/src/evalhash.c index 210c369..bd95b99 100644 --- a/src/evalhash.c +++ b/src/evalhash.c @@ -19,12 +19,11 @@ Revision History: --*/ #include "chess.h" -#ifdef EVAL_HASH extern ULONG g_uIterateDepth; -SCORE -GetRoughEvalScore(IN OUT SEARCHER_THREAD_CONTEXT *ctx, +SCORE +GetRoughEvalScore(IN OUT SEARCHER_THREAD_CONTEXT *ctx, IN SCORE iAlpha, IN SCORE iBeta, IN FLAG fUseHash) @@ -67,6 +66,7 @@ Return value: { return Eval(ctx, iAlpha, iBeta); } +#ifdef EVAL_HASH else if ((fUseHash) || (ctx->uPly <= (g_uIterateDepth / 2))) { u64Key = (pos->u64PawnSig ^ pos->u64NonPawnSig); @@ -93,9 +93,16 @@ Return value: } } } +#else + (void)u64Key; + (void)u; + (void)fUseHash; +#endif return(pos->iMaterialBalance[pos->uToMove] + ctx->uPositional); } +#ifdef EVAL_HASH + SCORE ProbeEvalHash(IN OUT SEARCHER_THREAD_CONTEXT *ctx, IN SCORE iAlpha, IN SCORE iBeta) diff --git a/src/main.c b/src/main.c index 01c8d26..1cf7f91 100755 --- a/src/main.c +++ b/src/main.c @@ -79,10 +79,16 @@ Return value: #ifdef DUMP_TREE Trace(" Search tree dumpfile generation enabled\n"); #endif - Trace(" Hash sizes: %u Mb (main), %u Mb / thread (pawn), %u Mb / thread (eval)\n", +#ifdef EVAL_HASH + Trace(" Hash sizes: %u Mb (main), %u Mb / thread (pawn), %u Mb / thread (eval)\n", (g_uHashTableSizeEntries * sizeof(HASH_ENTRY)) / MB, PAWN_HASH_TABLE_SIZE * sizeof(PAWN_HASH_ENTRY) / MB, EVAL_HASH_TABLE_SIZE * sizeof(EVAL_HASH_ENTRY) / MB); +#else + Trace(" Hash sizes: %u Mb (main), %u Mb / thread (pawn)\n", + (g_uHashTableSizeEntries * sizeof(HASH_ENTRY)) / MB, + PAWN_HASH_TABLE_SIZE * sizeof(PAWN_HASH_ENTRY) / MB); +#endif Trace(" QCheckPlies: %u\n", QPLIES_OF_NON_CAPTURE_CHECKS); Trace(" FutilityBase: %u\n", FUTILITY_BASE_MARGIN); p = ExportEvalDNA(); -- cgit v1.3