2. Verify eval is symmetrical (white/black) for a range of positions.
3. Compile with gcc 7 and use:
compile flags: -fsanitize=bounds-strict -fsanitize=address
link flags: -fsanitize=bounds-strict -fsanitize=address --fuse-ld=gold
run the application and note any errors.
4. If you are open source you can use Coverity Scan (static analyzer) for free. Otherwise Clang has one: https://clang-analyzer.llvm.org/
Already disabled transposition table cut-offs for it is causing bugs and I am not able to find out what is going on. This is the main reason why it searches less deep than before. It even goes wrong when only using exact scores.
Only using TT table now for getting a first move without search. Advantage is that it can show complete PVs. But disadvantage is that search is much slower than before.
2. Verify eval is symmetrical (white/black) for a range of positions.
3. Compile with gcc 7 and use:
compile flags: -fsanitize=bounds-strict -fsanitize=address
link flags: -fsanitize=bounds-strict -fsanitize=address --fuse-ld=gold
run the application and note any errors.
4. If you are open source you can use Coverity Scan (static analyzer) for free. Otherwise Clang has one: https://clang-analyzer.llvm.org/
--Jon
Basically all tuning is wasting time. With each change you have to start all over again. Unless it was an independent unit and that does not happen often.