settings.h
Go to the documentation of this file.
1 
12 #ifndef EDAX_SETTINGS_H
13 #define EDAX_SETTINGS_H
14 
15 #include <stdbool.h>
16 
17 #define MOVE_GENERATOR_CARRY 1
18 #define MOVE_GENERATOR_KINDERGARTEN 2
19 #define MOVE_GENERATOR_SSE 3
20 #define MOVE_GENERATOR_BITSCAN 4
21 #define MOVE_GENERATOR_ROXANE 5
22 
24 #define MOVE_GENERATOR MOVE_GENERATOR_CARRY
25 
27 #define USE_TC true
28 
30 #define USE_SC true
31 
33 #define USE_ETC true
34 
36 #define USE_PROBCUT true
37 
39 #define USE_RECURSIVE_PROBCUT true
40 
42 #define LIMIT_RECURSIVE_PROBCUT(x) x
43 
47 #define KOGGE_STONE 2
48 
52 #define PARALLEL_PREFIX 1
53 
54 #if (KOGGE_STONE & PARALLEL_PREFIX)
55  #error "usage of 2 incompatible algorithms"
56 #endif
57 
59 #define USE_IID false
60 
62 #define USE_PREVIOUS_SEARCH true
63 
65 #ifndef USE_TYPE_PUNING
66 #ifdef ANDROID
67 #define USE_TYPE_PUNING false
68 #else
69 #define USE_TYPE_PUNING true
70 #endif
71 #endif
72 
74 #define HASH_N_WAY 4
75 
77 #define HASH_ALIGNED 1
78 
80 #define USE_PV_EXTENSION true
81 
83 #define DEPTH_TO_SHALLOW_SEARCH 7
84 
86 #define DEPTH_MIDGAME_TO_ENDGAME 15
87 
89 #define ITERATIVE_MIN_EMPTIES 10
90 
92 #define PV_HASH_HEIGHT 5
93 
95 #define ETC_MIN_DEPTH 5
96 
98 #define SORT_ALPHA_DELTA 8
99 
101 #define SPLIT_MIN_DEPTH 5
102 
104 #define SPLIT_MIN_MOVES_TODO 1
105 
107 #define SPLIT_MAX_SLAVES 3
108 
110 #define BRANCHING_FACTOR 2.24
111 
113 #define SMP_W 49.0
114 
116 #define SMP_C 1.0
117 
119 #define FAST_PERFT true
120 
122 #define MULTIPV_DEPTH 10
123 
124 #endif /* EDAX_SETTINGS_H */
125