From 20 Nanoseconds to One

A chess engine must search millions of positions per second. Move generation is often a bottleneck. Generating moves for knights, kings, and pawns are computationally cheap (~1 nanosecond). However, rooks, bishops, and queens (aka “sliding pieces”) present a unique challenge: their movement depends on the placement of other pieces. This makes on-demand generation too slow … Continue reading From 20 Nanoseconds to One