towforce wrote:Wouldn't doing chess engine work on the GPU:
1. heavily restrict the choice of computers that could run the code (or a particular compilation of it)
2. interfere with other processes that want to draw on the display (e.g. another window)
Sure, but it also opens research on how to scale beyond 160 CPUs or so. It is clear to many that traditional ab-search with iterative deepening, and attempting to parallelize that, got stuck and needs overhaul because of the synchronization bottlenecks. Applications for any resulting algorithms, if found, are not just for GPU, but also CPU clusters, correspondence play (searches with long time controls) and mapping the opening theory efficiently (which is essentially a search with an extremely long time control).
Nope. Aphid is no good performance wise even for cluster search. It keeps the shallow part of the tree in memory to be searched independently by processors. But you still have to use alpha-beta to search each sub-tree. I tried it couple of years ago since it was simple to implement.
I just realized the black pawns bit board (bpawns) is completely unnecessary since I let the game go to the very end. It is much faster that way than test if the game has ended prematurely at each ply! So one less bitboard for each thread and saving of some unnecessary work. This game is for a "proof of concept" rather than a real attempt on solving some popular game on gpu.