i published the Source Code of Zeta, a Chess Programm running in OpenCL on a GPU, under GPL:
for Nvidia Devices: https://github.com/smatovic/Zeta/tree/zeta_nvidia_0915
and for AMD GPUs or Intel/AMD CPUs https://github.com/smatovic/Zeta/tree/zeta_amd_0915
See my blog for more Information: http://zeta-chess.blogspot.com/
Zeta is more a prototype than a real chess engine. It uses only one SIMD Unit of a GPU with 128 Threads, this is enough to achieve about 100 000 NPS, but still far away from that what a GPU is really able to compute, it is like using only 1 of 16 Cores.
Zeta is written in OpenCL, so it is able to run on GPUs, CPUs, APUs.
Zeta plays weak and buggy, a lot of well known chess techniques are not implemented.
So, whats inside?
- SPPS - a Simple Parallel Processing Scheme - Quad-Bitboard Board Representation (Thanks to Gerd Isenberg, http://chessprogramming.wikispaces.com/Quad-Bitboards) - Magic Bitboard Move Generator (Thanks to the Stockfish Team) - Tablebased Evaluation (Thanks to Tomasz Michniewski, http://chessprogramming.wikispaces.com/Simplified+evaluation+function)
- Castle Moves - En Passant Moves - AlphaBeta Pruning - Qsearch - SMP over mutlible SIMD Untis - All other well known techniques
Supported Platforms? Until now only Linux with AMD OpenCL SDK or NVIDIA OpenCl SDK. No binaries. CPUs (>=SSE3) will also work with AMD OpenCL SDK.