yepJVMerlino wrote:Really "instantly"? My engine takes about 3.6 seconds to reach depth 30, although it finds Kb1 at depth 22 in about 0.2 seconds.bob wrote:Fine is a really good test. You should hit depths of 30+ instantly if it is working. Hashing should help on other positions once you have a "best move" stored to improve your move ordering. That should be a measurable gain in terms of getting to a specific depth quicker...Mark wrote:Just implemented hash tables in my program. While I can now solve Fine #70, I'm not really seeing any improvements in the wac test suite. My eval is basically material and piece-square tables.
Are there any other good positions or test suites to see if my hash is working correctly?
Thanks!
jm
some examples on my laptop, using just one CPU:
Code: Select all
39-> 0.22 2.74 1. Kb1 Kb7 2. Kc1 Kc7 3. Kd1 Kd7 4.
Kc2 Kc7 5. Kd3 Kb7 6. Ke3 Kc7 7. Kf3
Kd7 8. Kg3 Ke7 9. Kh4 Kf7 10. Kg5 Kg7
11. Kxf5 Kf7 12. Kg5 Kg7 13. f5 Kf7
14. Kh5 Kf6 15. Kg4 Ke7 16. Kf3 Kf7
17. Ke4 Ke7 18. Ke3 Kf7 19. Kf4 Kf6
20. Ke4
43-> 0.88 6.07 1. Kb1 Kb7 2. Kc1 Kc7 3. Kd1 Kd7 4.
Kc2 Kc7 5. Kd3 Kb7 6. Ke3 Kc7 7. Kf3
Kd7 8. Kg3 Ke7 9. Kh4 Kf7 10. Kg5 Kg7
11. Kxf5 Kf7 12. Kg5 Kg7 13. f5 Kf7
14. f6 Kf8 15. Kg4 Kg8 16. Kf4 Kf8
17. Kg5 Kf7 18. Kf5 Kf8 19. Ke6 Ke8
20. Kxd6 Kf7 21. Ke5 Kf8 22. Ke6
44-> 1.01 6.23 1. Kb1 Kb7 2. Kc1 Kc7 3. Kd1 Kd7 4.
Kc2 Kc7 5. Kd3 Kb7 6. Ke3 Kc7 7. Kf3
Kd7 8. Kg3 Ke7 9. Kh4 Kf7 10. Kg5 Kg7
11. Kxf5 Kf7 12. Kg5 Kg7 13. f5 Kf7
14. f6 Kf8 15. Kg4 Kg8 16. Kf4 Kf8
17. Kg5 Kf7 18. Kf5 Kf8 19. Ke6 Ke8
20. Kxd6 Kf7 21. Ke5 Ke8 22. Ke6 Kf8
48-> 18.58 13.30 1. Kb1 Kb7 2. Kc1 Kc7 3. Kd1 Kd7 4.
Kc2 Kc7 5. Kd3 Kb7 6. Ke3 Kc7 7. Kf3
Kd7 8. Kg3 Ke7 9. Kh4 Kf7 10. Kg5 Kg7
11. Kxf5 Kf7 12. Kg5 Kg7 13. f5 Kf7
14. f6 Kf8 15. Kg4 Kg8 16. Kf4 Kf8
17. Kg5 Kf7 18. Kf5 Kf8 19. Ke6 Ke8
20. f7+ Kf8 21. Kxd6 Kxf7 22. Kc7 Kf6
23. d6 Ke6 24. d7 Kd5 25. d8=Q+ Kc4