Currently I am developing a simple game that implements the Alpha Beta Pruning algorithm but it is quite slow when the board of the game is big. I first thought was to break the alphabeta down to 2-3 mini alphabetas to account for 2-3 different kind of moves. My problem is that the computer that I am working on has one CPU with one core only. Do you think that multithreading will improve its performance ?
Asked
Active
Viewed 162 times
0
-
Even a single-core system may be helped by parallelization, within limits of course. Try using two threads and measure the results. – Some programmer dude Mar 18 '16 at 08:14
-
I would say no, sounds like the bottleneck is CPU and not IO – Guy L Mar 18 '16 at 08:20
1 Answers
0
AlphaBeta is a sequential algorithm so divide the tree is not a good solution. To speed the search you must have a good moves order. Another improved is use a hash table to cache the move; than, with hash table you can use the lazySMP multithread alghorithm.

gekomad
- 525
- 9
- 17