projects
/
stockfish
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
6350027
)
PSV3_1
author
Alain SAVARD
<support@multicim.com>
Sat, 28 Mar 2015 23:30:46 +0000
(07:30 +0800)
committer
Gary Linscott
<glinscott@gmail.com>
Sat, 28 Mar 2015 23:30:46 +0000
(07:30 +0800)
Small speed-up in pawn.cpp
Results for 10 tests for each version:
Base Test Diff
Mean
1435636
1445238
-9602
StDev 22576 23189 1848
p-value: 1
speedup: 0.007
No functional change
Resolves #295
src/pawns.cpp
patch
|
blob
|
history
diff --git
a/src/pawns.cpp
b/src/pawns.cpp
index
16c902d
..
5290efb
100644
(file)
--- a/
src/pawns.cpp
+++ b/
src/pawns.cpp
@@
-45,10
+45,10
@@
namespace {
// Backward pawn penalty by opposed flag and file
const Score Backward[2][FILE_NB] = {
// Backward pawn penalty by opposed flag and file
const Score Backward[2][FILE_NB] = {
- { S(
30, 42), S(43, 46), S(49, 46), S(49, 4
6),
- S(
49, 46), S(49, 46), S(43, 46), S(30, 4
2) },
- { S(
20, 28), S(29, 31), S(33, 31), S(33, 3
1),
- S(
33, 31), S(33, 31), S(29, 31), S(20, 2
8) } };
+ { S(
50, 52), S(63, 56), S(69, 56), S(69, 5
6),
+ S(
69, 56), S(69, 56), S(63, 56), S(50, 5
2) },
+ { S(
40, 38), S(49, 41), S(53, 41), S(53, 4
1),
+ S(
53, 41), S(53, 41), S(49, 41), S(40, 3
8) } };
// Connected pawn bonus by opposed, phalanx, twice supported and rank
Score Connected[2][2][2][RANK_NB];
// Connected pawn bonus by opposed, phalanx, twice supported and rank
Score Connected[2][2][2][RANK_NB];
@@
-180,19
+180,17
@@
namespace {
// Score this pawn
if (isolated)
score -= Isolated[opposed][f];
// Score this pawn
if (isolated)
score -= Isolated[opposed][f];
-
- if (!supported && !isolated)
- score -= UnsupportedPawnPenalty;
-
- if (doubled)
- score -= Doubled[f] / distance<Rank>(s, frontmost_sq(Us, doubled));
-
- if (backward)
+ else if (backward)
score -= Backward[opposed][f];
score -= Backward[opposed][f];
+ else if (!supported)
+ score -= UnsupportedPawnPenalty;
if (connected)
score += Connected[opposed][!!phalanx][more_than_one(supported)][relative_rank(Us, s)];
if (connected)
score += Connected[opposed][!!phalanx][more_than_one(supported)][relative_rank(Us, s)];
-
+
+ if (doubled)
+ score -= Doubled[f] / distance<Rank>(s, frontmost_sq(Us, doubled));
+
if (lever)
score += Lever[relative_rank(Us, s)];
}
if (lever)
score += Lever[relative_rank(Us, s)];
}