Merge official-stockfish/master
authorFabian Fichter <ianfab@users.noreply.github.com>
Sun, 18 Jul 2021 13:44:41 +0000 (15:44 +0200)
committerFabian Fichter <ianfab@users.noreply.github.com>
Sun, 18 Jul 2021 13:44:41 +0000 (15:44 +0200)
bench: 6215456

1  2 
AUTHORS
README.md
src/evaluate.h
src/misc.h
src/nnue/nnue_feature_transformer.h
src/search.cpp
src/search.h
src/syzygy/tbprobe.cpp

diff --cc AUTHORS
+++ b/AUTHORS
@@@ -1,21 -1,4 +1,21 @@@
 +# Fairy-Stockfish authors
 +
 +# Main author
 +Fabian Fichter (ianfab)
 +
 +# Contributors in alphabetical order
 +alwey
 +Belzedar94
 +Fulmene
 +gbtami
 +QueensGambit
 +tttak
 +yoav-rozin
 +ydirson
 +
 +
 +
- # List of authors for Stockfish, as of May 17, 2021
+ # List of authors for Stockfish, as of June 14, 2021
  
  # Founders of the Stockfish project and fishtest infrastructure
  Tord Romstad (romstad)
diff --cc README.md
Simple merge
diff --cc src/evaluate.h
Simple merge
diff --cc src/misc.h
Simple merge
@@@ -151,23 -197,20 +197,20 @@@ namespace Stockfish::Eval::NNUE 
      // Read network parameters
      bool read_parameters(std::istream& stream) {
  
-       for (std::size_t i = 0; i < HalfDimensions; ++i)
-         biases[i] = read_little_endian<BiasType>(stream);
-       for (std::size_t i = 0; i < HalfDimensions * FeatureSet::get_dimensions(); ++i)
-         weights[i] = read_little_endian<WeightType>(stream);
-       for (std::size_t i = 0; i < PSQTBuckets * FeatureSet::get_dimensions(); ++i)
-         psqtWeights[i] = read_little_endian<PSQTWeightType>(stream);
+       read_little_endian<BiasType      >(stream, biases     , HalfDimensions                  );
 -      read_little_endian<WeightType    >(stream, weights    , HalfDimensions * InputDimensions);
 -      read_little_endian<PSQTWeightType>(stream, psqtWeights, PSQTBuckets    * InputDimensions);
++      read_little_endian<WeightType    >(stream, weights    , HalfDimensions * FeatureSet::get_dimensions());
++      read_little_endian<PSQTWeightType>(stream, psqtWeights, PSQTBuckets    * FeatureSet::get_dimensions());
        return !stream.fail();
      }
  
      // Write network parameters
      bool write_parameters(std::ostream& stream) const {
-       for (std::size_t i = 0; i < HalfDimensions; ++i)
-         write_little_endian<BiasType>(stream, biases[i]);
-       for (std::size_t i = 0; i < HalfDimensions * FeatureSet::get_dimensions(); ++i)
-         write_little_endian<WeightType>(stream, weights[i]);
-       for (std::size_t i = 0; i < PSQTBuckets * FeatureSet::get_dimensions(); ++i)
-         write_little_endian<PSQTWeightType>(stream, psqtWeights[i]);
+       write_little_endian<BiasType      >(stream, biases     , HalfDimensions                  );
 -      write_little_endian<WeightType    >(stream, weights    , HalfDimensions * InputDimensions);
 -      write_little_endian<PSQTWeightType>(stream, psqtWeights, PSQTBuckets    * InputDimensions);
++      write_little_endian<WeightType    >(stream, weights    , HalfDimensions * FeatureSet::get_dimensions());
++      write_little_endian<PSQTWeightType>(stream, psqtWeights, PSQTBuckets    * FeatureSet::get_dimensions());
        return !stream.fail();
      }
  
diff --cc src/search.cpp
@@@ -1246,16 -1112,13 +1255,17 @@@ moves_loop: // When in check, search st
                 && abs(ss->staticEval) > Value(100))
            extension = 1;
  
 +      // Losing chess capture extension
 +      else if (    pos.must_capture()
 +               &&  pos.capture(move)
 +               &&  (ss->inCheck || MoveList<CAPTURES>(pos).size() == 1))
 +          extension = 1;
 +
        // Add extension to new depth
        newDepth += extension;
+       ss->doubleExtensions = (ss-1)->doubleExtensions + (extension == 2);
  
        // Speculative prefetch as early as possible
 -      prefetch(TT.first_entry(pos.key_after(move)));
 -
        // Update the current move (this must be done after singular extension search)
        ss->currentMove = move;
        ss->continuationHistory = &thisThread->continuationHistory[ss->inCheck]
diff --cc src/search.h
Simple merge
Simple merge