alpha-beta search | A game tree search algorithm that gives the same results as a simple minimax search algorithm, but uses lower and upper bounds (alpha and beta, respectively) which are updating during the search to prune off branches of the search tree that cannot affect the search results |
aspiration search | Alpha-beta search with a restricted search window; alpha and beta are given initial guesses that are not infinite to speed up the search; in case of a fail low or fail high, the search must be repeated with a wider window to get valid results |
CPU | Central Processing Unit; the main processor of a computer |
CUDA | NVIDIA's application programming interface for graphics processing units |
fail high | Alpha-beta search returns a value greater than beta which means that the opponent would have never chosen the move leading to this branch of the search tree |
fail low | Alpha-beta search returns a value less than alpha which means that there is a better move than the one just searched |
GPU | Graphics Processing Unit; a part of a computer that is specialized in computing the (3-dimensional) graphics on the display |
GPGPU | General Purpose Graphics Processing Unit; a graphics processing unit that can be used for general computing tasks in addition to computing graphics |
kernel | In CUDA architecture the code executed by threads |
multiprocessor | In CUDA architecture a processor on a GPU that can run several threads in parallel in SIMD style |
ply | One move by one player; this is different from a full move which includes one pair of moves (one per player); often the unit of search depth |
search tree | Tree of chess positions where the root is the current position; the next level consists positions which can be reached by one move from the current position and the levels after that consist of positions that can be reached by one move from them etc. |
search window | In alpha-beta search values between the lower and the upper bound |
SIMD | Single Instruction Multiple Data; a parallel computation architecture where a single instruction is executed for multiple data elements at once |
SIMT | Single Instruction Multiple Threads; in CUDA architecture a single instruction is executed for multiple threads at once |
thread | In CUDA architecture an independent stream of parallel execution |
warp | In CUDA architecture a block of threads (e.g. 32 threads) that are executed simultaneously by a single streaming multiprocessor |
A chess programming enthusiast trying to implement an efficient chess engine on a general purpose GPU using NVIDIA's CUDA parallel computing platform.
Glossary
Subscribe to:
Posts (Atom)