I would have to say: Start looking for bugs, this seems wrong.cms271828 wrote:I see, makes sense,
I just timed my engine, to see how long it took to complete ply 10.
A) With 2^20 entries in table:
Depth=10 BEST_MOVE=e3 score=-94 nnode=290,833,381 neval=236,804,413
total_nnode=340,373,635 total_neval=278,244,336
TIME TAKEN = 179.954 seconds
B) With 2^21 entries in table:
Depth=10 BEST_MOVE=e3 score=-94 nnode=441,017,974 neval=359,452,142
total_nnode=492,668,899 total_neval=402,521,651
TIME TAKEN = 263.906 seconds
This doesn't look good, it takes much longer with a bigger table.
But if you divide total_nnode (total number of nodes searched for all plies) by the time, you get 1.87M nps for both A) and B).
Surely this is wrong?
But I can't spot any obvious error.
Is there any simple thing I can do to find error.
Thanks
Is this the startposition ? If yes, e3 with a -94 score seems fishy (though consequent).
Start by making a flip function. This function calls evaluate,mirrors the black and white position and calls eval again, to check if the scores are the same.
2. Make a CreateHashnumberFromScratch and check it with the incremental one. (Actually, create everything you store in the hashtable)
3. Check the move from hashtable to see if it's legal. (i've had some mess with castle and ep moves)
etc for any sanitycheck.
Tony