Search found 16730 matches

by bob
Sat Nov 24, 2018 3:04 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: adding an existing key to the hashtable
Replies: 9
Views: 732

Re: adding an existing key to the hashtable

Here's the reason for overwriting. Apparently whatever is there was not good enough to terminate the search at the start of this position, so what's the point of saving something that didn't work when you now have something that is correct and useful?? IE exactly what HGM said but with fewer words.....
by bob
Fri Nov 16, 2018 4:47 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Any Fortran coder ?
Replies: 26
Views: 1297

Re: Any Fortran coder ?

Recursion has worked for a long time now. One thing to avoid is a 2d array, use a 1d vector instead. Otherwise every array access ends up with an integer multiply buried in the middle of the address calculation. Otherwise it will work fine. The language is a bit of a mismatch for chess but I used it...
by bob
Wed Oct 03, 2018 6:17 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Rebel Book Draw?
Replies: 17
Views: 1675

Re: Rebel Book Draw?

This is a problem you have to fix. If your opponent plays a move that "undoes" one of his recent moves (or his most recent move most commonly) then you will find that position in your book if you are not careful to recognize the 2-fold repetition. My fix was to simply ignore a book move that repeats...
by bob
Sun Sep 23, 2018 4:59 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: about speed et profiling tools
Replies: 16
Views: 1686

Re: about speed et profiling tools

Another thought. NPS is highest when you do a pure minimax search. You don't waste any computation effort generating moves or doing other things that cost computational effort. As you improve ordering, you begin to see NPS drop because in lots of positions you just search one move and throw the rest...
by bob
Tue Aug 14, 2018 9:03 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: A more interesting question about GPU verses CPU
Replies: 18
Views: 2916

Re: A more interesting question about GPU verses CPU

To 'compare' algorithms you should first define a metric for algorithmic complexity. You seem to focus (completely arbitrarily) on the number of multiplications. One might just as well only consider the number of branches. With the same number of branches per second, Stockfish would not be a match ...
by bob
Tue Aug 14, 2018 8:52 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Time Management and Move Selection
Replies: 14
Views: 2080

Re: Time Management and Move Selection

My current "easy move" approach is really just a "easier/harder" approach. If things are stable, the situation looks "easier". If things are unstable, the situation looks "harder". That degree of stability can make the search move significantly faster, or significantly slower. Very "un-computer-like...
by bob
Tue Aug 14, 2018 4:18 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Attacks From table
Replies: 12
Views: 1984

Re: Attacks From table

unless you have a power of 2 size, a table lookup is going to include a multiply. Shift and add really don't count in a super-scalar architecture. I don't think there is anything to gain here. I used to do what Slate and Atkin did. Maintained an array of attacks. One showing all squares attacked fro...
by bob
Tue Aug 14, 2018 4:28 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Attacks From table
Replies: 12
Views: 1984

Re: Attacks From table

Getting rid of that overhead is what drove me to the rotated bit board development. And then magic move generation came along as yet another alternative. The updates to maintain both attacks to and attacks from (slate/atkin chapter in Frey's "Chess Skill in Man and Machine") were pretty expensive. C...
by bob
Wed Jul 25, 2018 3:06 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: UCI Hash Usage Rules
Replies: 60
Views: 5793

Re: UCI Hash Usage Rules

May or may not be what you want. RSS = Resident Set Size. This is the set of pages the program currently has in real memory. Might or might not be the actual "working set" as some of the pages might be swapped out. Also RSS is the set of physical pages in memory for a process. There can be overlap w...
by bob
Wed Jul 25, 2018 3:01 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Time Management and Move Selection
Replies: 14
Views: 2080

Re: Time Management and Move Selection

I think you need to give up on "easy move" itself. Leads to problems. What if your opponent finds a deep tactic that lets it hang a piece, but it takes a deep search to realize this? Easy move code can make you do the capture and get blown out. There are things you can try, with risks. For example, ...