02 November 2015

Chess Engines : Parallel Search

One of the messages I took away from FishCooking (the previous post in this series on 'Chess Engines') was the importance of Parallel Search [chessprogramming.wiki...] on multiple processors. In another post in the series, Bitboards, I surmised,

Not all of the engines' strength can be attributed to software. In parallel with algorithmic discoveries, computer hardware has also been advancing rapidly. Not only are processors smaller and faster, they are also more versatile. [...] Was it a coincidence that the mid-2000s spurt in computer chess happened with the introduction of 64-bit processors?

I could have asked the same question about multiple processors. From Multi-core processor [Wikipedia]:-

Processors were originally developed with only one core. In the mid 1980s Rockwell International manufactured versions of the 6502 with two 6502 cores on one chip, sharing the chip's pins on alternate clock phases. Other multi-core processors were developed in the early 2000s by Intel, AMD and others.

The improvement in performance gained by the use of a multi-core processor depends very much on the software algorithms used and their implementation. [...] The parallelization of software is a significant ongoing topic of research.

The italics are mine. TCEC Season 8 has reached the final stage (for background, see my previous post Preliminary Info), and a recent FishCooking post, Machine setup for finals, informs that the multi-core configuration is

2 x 12 core Intel Xeon E5-2690v3 @ 3100 MHz, 256 GB RAM, 256 GB SSD - Martin Thoresen (Operator)

Once again, just as in Season 7, the two super-engines Komodo and Stockfish are playing for the title of unofficial World Computer Champion. The engines tied all six games played between them in the qualifying stage 3, where Komodo finished 1.5 points ahead of Stockfish. As we saw in the 'FishCooking' post, Stockfish lost a few games on time, apparently due to a fault in its implementation of parallel search. Will the Season 8 final show that the open source team has solved these problems?

No comments: