Blowing up my compile times for dubious benefits

The author of this article discusses their experience building a chess engine called Fiddler over the past two years, focusing on optimizing the move generator, which is a critical component of any chess engine. They discuss the use of bitboards, which represent the occupancy of a chessboard using a unique 64-bit integer, and the use of a lookup table to precompute sliding move values for each square and occupancy on the board. They also explain the concept of “magic moves,” which use a set of precomputed values to efficiently generate sliding moves in a constant time. Throughout the article, the author provides detailed explanations and code snippets for readers to follow along.

To top