]> git.sesse.net Git - stockfish/blobdiff - src/thread.h
Increase MAX_THREADS to 32
[stockfish] / src / thread.h
index ddcea17dd0963c7f0fb70bd12f9c8c60f2a0f8ad..463739fe2eff7c39617ad66ee59953214731676a 100644 (file)
   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 
-
 #if !defined(THREAD_H_INCLUDED)
 #define THREAD_H_INCLUDED
 
-
-////
-//// Includes
-////
-
 #include <cstring>
 
 #include "lock.h"
 #include "position.h"
 #include "search.h"
 
-
-////
-//// Constants and variables
-////
-
-const int MAX_THREADS = 16;
+const int MAX_THREADS = 32;
 const int MAX_ACTIVE_SPLIT_POINTS = 8;
 
-
-////
-//// Types
-////
-
 struct SplitPoint {
 
   // Const data after splitPoint has been setup
@@ -57,11 +41,10 @@ struct SplitPoint {
   int ply;
   int master;
   Move threatMove;
-  SearchStack sstack[MAX_THREADS][PLY_MAX_PLUS_2];
 
   // Const pointers to shared data
   MovePicker* mp;
-  SearchStack* parentSstack;
+  SearchStack* ss;
 
   // Shared data
   Lock lock;
@@ -69,12 +52,11 @@ struct SplitPoint {
   volatile Value alpha;
   volatile Value bestValue;
   volatile int moveCount;
-  volatile bool stopRequest;
+  volatile bool betaCutoff;
   volatile int slaves[MAX_THREADS];
 };
 
 // ThreadState type is used to represent thread's current state
-
 enum ThreadState
 {
   THREAD_INITIALIZING,  // thread is initializing itself
@@ -92,5 +74,4 @@ struct Thread {
   SplitPoint splitPoints[MAX_ACTIVE_SPLIT_POINTS];
 };
 
-
 #endif // !defined(THREAD_H_INCLUDED)