Search found 3355 matches

by Sven
Sun Oct 25, 2020 5:33 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Different performance of equal executables
Replies: 11
Views: 472

Re: Different performance of equal executables

"diff" would say "binary files differ" if they were different. But you don't need something like md5sum which requires to type several commands ... To determine whether two arbritrary files A and B are different at all, just type: cmp -s A B || echo "A and B are different" If that produces empty out...
by Sven
Fri Oct 16, 2020 4:20 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Simple test positions
Replies: 6
Views: 505

Re: Simple test positions

Should be easy with a good TT
by Sven
Fri Oct 16, 2020 4:16 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Simplifying code
Replies: 118
Views: 49970

Re: Simplifying code

Henk wrote:
Fri Oct 16, 2020 8:08 am
Can't even use iterators in critical code for that means allocating memory.

So enjoy ugly code.
Iterators, as we know them from C++ STL for instance, have an intrinsic ugliness 😉

So you might want to write your own, nice, efficient, non-allocating iterators ...
by Sven
Fri Oct 16, 2020 4:07 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: int vs Board: Move generator
Replies: 5
Views: 510

Re: int vs Board: Move generator

What exactly is "Board (just make)"? I get the impression that, despite your description, the difference is not just how a move is stored (in 16 bit vs. in a struct of three or more integers) but also what the strategy for unmake is (restore board from stack vs. explicit unmake). If that is the case...
by Sven
Sat Oct 10, 2020 4:00 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Perft speed optimization (renamed)
Replies: 107
Views: 11772

Re: Perft speed optimization (renamed)

Why would "getting make(), unmake() and associated functions to be as fast as possible" not include the move generation functions? And why would you not want to use a simple solution that costs very little programming effort and results in a huge gain of speed, for both perft and search? I'm using ...
by Sven
Sat Oct 10, 2020 2:29 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Perft speed optimization (renamed)
Replies: 107
Views: 11772

Re: Perft speed optimization (renamed)

I was speaking about a perft function without any tricks and without any special move generator optimizations (The entire thread is basically about getting make(), unmake() and associated functions to be as fast as possible, so no tricks or advanced move generation... yet :) ). In that case, you -w...
by Sven
Sun Sep 20, 2020 5:01 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: PLEASE HELP with MATING scores adjustments in TT
Replies: 9
Views: 1922

Re: PLEASE HELP with MATING scores adjustments in TT

In your search, the mate distance is relative to the root position. If you store it like that in the hash tables, and you have a hit in the next move turn, the mate score is wrong. Example. You are at move 20 and see a mate in 8 plies. You store that position. Next move turn, so you are at move 21,...
by Sven
Mon Sep 14, 2020 9:13 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: A very quick clarification question on sorting PV moves
Replies: 5
Views: 818

Re: A very quick clarification question on sorting PV moves

[...] assuming that what you call parent node is what I called previous ply's move (it's literally the same right? say: e2e4 e7e5 - here if we are at e7e5 then e2e4 would be parent root node or how I call it previous ply's move) IS actually "leading to the current node" or how I call it - is the mo...
by Sven
Sun Sep 13, 2020 10:03 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: A very quick clarification question on sorting PV moves
Replies: 5
Views: 818

Re: A very quick clarification question on sorting PV moves

It is as simple as that: 1) A node belongs to the root PV (i.e., follows the root PV) if its parent node belongs to it and the move leading to the current node is the parent's PV move. 2) The root node always belongs to the root PV. In an older private engine I developed years ago I implemented that...
by Sven
Thu Sep 10, 2020 12:09 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Speeding Up The Tuner
Replies: 38
Views: 5096

Re: Speeding Up The Tuner

Even when your evaluator was piece-square only it couldn't be much faster than reading a FEN. But if you clear a few GB of memory that was not used in the first place... That is just wrong design. There is no reason at all to clear the hash table on setboard. There actually is never any need to cle...