Search found 19587 matches

by hgm
Sat Apr 17, 2021 9:10 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Missing input in ponder
Replies: 9
Views: 170

Re: Missing input in ponder

On more thinking I realized that this problem could also have been solved by actually using the number of waiting input characters that PeekNamedPipe() reports. You could put that in a variable 'buffered', which you ecrement each time you read a character from the input. As long as it is non-zero, y...
by hgm
Sat Apr 17, 2021 8:31 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: The mailbox trials
Replies: 125
Views: 10528

Re: The mailbox trials

Move Sorting In a previous posting I 'went through hoops' to re-pack the captures into the desired order in the 64-bit capture set they were originally extracted from. This was pointless and stupid. It would only serve a purpose if we were using a separate extraction loop for each capture set, to m...
by hgm
Fri Apr 16, 2021 7:25 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: The mailbox trials
Replies: 125
Views: 10528

Re: The mailbox trials

Well, details of he evaluation are outside the scope of this project. Except that the basic info on which an evaluation could be based should be available cheaply. That in particular applies to mobility, normally an expensive term to calculate. I did not get to that yet. But what I had in mind was t...
by hgm
Fri Apr 16, 2021 9:05 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: The mailbox trials
Replies: 125
Views: 10528

Re: The mailbox trials

Piece Pair encoding II To make optimal use of 64-bit architecturs, it is better to change the piece numbering, from the natural N, N, B, B, R, R, Q, K to (N, B), (N, B), (Q, R), (K, R). Where the parentheses indicate pairs whose attackers sets can be loaded together as a 64-bit int. Intel architect...
by hgm
Thu Apr 15, 2021 5:25 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: The mailbox trials
Replies: 125
Views: 10528

Re: The mailbox trials

So much for my great ideas... :( When I write x *= 0x200000001ull; the compiler optimizes the multiplier away, for a shift and an add! :shock: I suppose the problem is that there is no load immediate for 64-bit operands in x64 architecture. So you would have to load the multiplier from a memory vari...
by hgm
Thu Apr 15, 2021 4:51 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: PST-only Evaluation for MinimalChess 0.4
Replies: 20
Views: 468

Re: PST-only Evaluation for MinimalChess 0.4

Well, that is PeSTO itself, of course. And it has no Pawn evaluator. Just PST, as the name suggests.
by hgm
Thu Apr 15, 2021 4:49 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Missing input in ponder
Replies: 9
Views: 170

Re: Missing input in ponder

That you use PeekNamedPipe suggest that you do not use a separate input thread, which is just hanging in a read call, blocked while waiting for input to arrive. But instead have the search thread poll for arrival of input, and only read it when there is something to read. This can give problems with...
by hgm
Thu Apr 15, 2021 1:02 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: The mailbox trials
Replies: 125
Views: 10528

Re: The mailbox trials

OK, if branches is he problem, let's try to eliminate as many of those as possible. The problem of course is that you then have to do unconditionally everything you could ever have to do, always. But the merging of the sets in 64-bit arithmetic did not seem excessively costly, so perhaps this will p...
by hgm
Thu Apr 15, 2021 9:02 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: The mailbox trials
Replies: 125
Views: 10528

Re: The mailbox trials

Piece-Pair Encoding This morning I got a new idea. By keeping the encoding of pieces such that pairs of equally valued pieces have consecutive number, you can load the 32-bit attackers sets of the pair of them in a single 64-bit operation. The encoding I am currently using (16=PPPPPPPPNNBBRRQKppppp...
by hgm
Wed Apr 14, 2021 10:18 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: The mailbox trials
Replies: 125
Views: 10528

Re: The mailbox trials

Just for the record, this is the latest profile: % cumulative self self total time seconds seconds calls s/call s/call name 21.58 1.10 1.10 24766537 0.00 0.00 Search 17.46 1.99 0.89 21869485 0.00 0.00 MovePiece 13.54 2.68 0.69 21869485 0.00 0.00 Finish 13.14 3.35 0.67 32777822 0.00 0.00 SearchCaptur...