Search found 81 matches

by maksimKorzh
Sun Dec 02, 2018 3:41 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: A tribute to community
Replies: 5
Views: 744

A tribute to community

Hi all! I'd like to introduce my work dedicated to beginner chess programmers looking for some sort of resources to get started with. The great chess programming community gave me so much, so I want to give it something back, in hope that this would be useful. https://github.com/maksimKorzh/nibble-c...
by maksimKorzh
Wed Nov 28, 2018 9:38 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: How to incrementally update attack tables?
Replies: 5
Views: 1153

Re: How to incrementally update attack tables?

Aleks Peshkov wrote:
Wed Nov 28, 2018 9:10 am
Board representation for incremental attack tables should be build from scratch.
It is not a efficient idea to add attacks as extra weight to well-known representations.
That's really good advise, thanks!
by maksimKorzh
Tue Nov 27, 2018 3:02 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: CCR board representation
Replies: 7
Views: 1266

Re: CCR board representation

Good luck with CCR, you may try using 256-bit ymm register of x86 AVX2 for one register boards, to make/unmake by board ^= tbl[enumMove] ;-) related cpw stuff: https://www.chessprogramming.org/Nibble#ArrayOfNibbles CCR with "vertical" nibbles: https://www.chessprogramming.org/Quad-Bitboards https:/...
by maksimKorzh
Mon Nov 26, 2018 12:21 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: CCR board representation
Replies: 7
Views: 1266

Re: CCR board representation

after two days of intensive research I've suddenly realized the answer to my own question - the key trick is NOT USE RAM, but USE PROCESSOR REGISTERS instead to keep track of entire board state. You might argue - the registers often need to take some different values, like the multiplication is poss...
by maksimKorzh
Sun Nov 25, 2018 11:15 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: CCR board representation
Replies: 7
Views: 1266

CCR board representation

A couple of days ago I've found this paper http://www.doiserbia.nb.rs/img/doi/0354-0243/2012/0354-02431200011V.pdf describing so called "Compact Chessboard Representation". The key concept is to use an array of 8 elements to represent the entire board. Each 32-bit unsigned integer in the array repre...
by maksimKorzh
Thu Nov 22, 2018 7:11 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: How to incrementally update attack tables?
Replies: 5
Views: 1153

Re: How to incrementally update attack tables?

Thank you for such a detailed answer, mr. Muller, I feel a bit confused. It seems to be a really tough work. Probably magic bitboards are much easier to implement even if writing the routine of generating magic numbers your own which I did once... I've modified micro-Max's move generator by adding i...
by maksimKorzh
Wed Nov 21, 2018 4:01 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: How to incrementally update attack tables?
Replies: 5
Views: 1153

How to incrementally update attack tables?

Hi guys! I want to implement attack tables in order to reduce is_square_attacked() function's execution time. I use 0x88 board representation and keep track of the piece lists. I DO NOT want to use bitboards and any kind of pre-calculated attack tables for all pieces, for that takes lot's of amount ...
by maksimKorzh
Thu Nov 15, 2018 7:15 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Any Fortran coder ?
Replies: 26
Views: 3750

Re: Any Fortran coder ?

Congratulations with your first attempt! Just curious - why Fortran?
by maksimKorzh
Thu Nov 15, 2018 2:09 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Profiling performance test (perft) related question
Replies: 2
Views: 900

Re: Profiling performance test (perft) related question

It's quite difficult to understand, but are the nodes visited the same for each version? You state 97862 in the first example, and then not for the others. Next point: Have you done some perft testing to check the move generators are working correctly? Thanks for your reply, Richard, yes, the move ...
by maksimKorzh
Sun Nov 11, 2018 8:43 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Profiling performance test (perft) related question
Replies: 2
Views: 900

Profiling performance test (perft) related question

I've written two engines that use slightly different move generation philosophy. Now I'm working with some sort of a hybrid solution to get the most out of both of them. I'm using gprof profiler to compare perft test results. These results confused me totally, I'm asking for help to explain how is t...