Skip to content

Releases: nodchip/Stockfish

stockfish-nnue-2020-08-30

30 Aug 05:49
bc90567
Compare
Choose a tag to compare

Changes:

  • Merged the official Stockfish master branch. (242a7d9)
  • gensfen Don't allow LMP on PvNodes. Thank you, jhellis3! (#80)
  • convert_bin Added check_invalid_fen option. It checks if fen is valid or not. Thank you, tttak! (#84)
  • convert_bin Changed to compare "Piece placement field" between input_fen and pos.fen(). Thank you, tttak! (#84)
  • learn Added winning_probability_coefficient option. It specifies the coefficient to calculate the winning probability from a value. (#71)
  • convert_bin learn Added src_score_min_value, src_score_max_value, dest_score_min_value and dest_score_max_value options. They specify the scaling factor of scores. (#71)
  • convert_bin Supported new score formats. Thank you, tttak! (#88)
    • { [%eval 0.25] [%clk 0:10:00] }
    • { +0.71/22 1.2s }
    • { 0.60 }
    • { book }
    • no eval
    • others
  • convert_bin Added convert_no_eval_fens_as_score_zero option. If specifiyes the behavior to convert a fen whose score is {book], no eval or others. Thank you, tttak! (#88)
    • convert_no_eval_fens_as_score_zero 0 : Skip the conversion of the fen.
    • convert_no_eval_fens_as_score_zero 1 : Convert the fen as score 0.
  • learn Added convert_teacher_signal_to_winning_probability option to convert the teacher signals to winning probabilities. (#71)
    • For example, the following command converts pgn files containing winning probabilities to a bin file, and train a net from the winning probabilities directly.
      • convert_bin src_score_min_value 0.0 src_score_max_value 1.0 dest_score_min_value -30000 dest_score_max_value 30000 ...
      • learn src_score_min_value -30000 src_score_max_value 30000 dest_score_min_value 0.0 dest_score_max_value 1.0 convert_teacher_signal_to_winning_probability 0 ...
  • gensfen learn Added use_raw_nnue_eval option. It specifies if the training data generator or the trainer uses the raw NNUE eval values. (#89)
    • When initial training data are generated from the classic eval for supervised learning, set use_raw_nnue_eval to 0 and Use NNUE to 0.
    • When an initial net is trained for supervised learning, set use_raw_nnue_eval to 1 and Use NNUE to 1.
    • When training data are generated from NNUE for reinforcement learning, set use_raw_nnue_eval to 1 and Use NNUE to 1.
    • When a net is trained for reinforcement learning, set use_raw_nnue_eval to 1 and Use NNUE to 1.
  • learn Added use_wdl option. It uses WDL to convert a score to a winning probability instead of sigmoid function. Thank you, tttak! (#90)
  • Fixed a build error in Ubuntu 18.04. Thank you, hero2017! (#92)

The network parameter file is not included in this release. Please download the top most net file on fishtest (https://tests.stockfishchess.org/nns). If there are questions, ask in the Stockfish unofficial Discord server (https://discord.gg/ZzJwPv3) at first.

filename CPU instructions Supported CPUs
x86-64 Intel Streaming SIMD Extensions 2 >= AMD Athlon 64
x86-64-ssse3 Intel Supplemental Streaming SIMD Extensions 3 >= Intel Pentium 4 (Prescott model F)
x86-64-sse3-popcnt Intel Streaming SIMD Extensions 3 + POPCNT >= AMD Phenom
x86-64-modern Intel Streaming SIMD Extensions 4.1 >= Intel Core 2 Duo (Penryn)
x86-64-sse41-popcnt Intel Streaming SIMD Extensions 4.1 + POPCNT >= AMD Bobcat
x86-64-avx2 Intel Advanced Vector Extensions 2 >= AMD APU (Carrizo)
x86-64-bmi2 Intel Advanced Vector Extensions 2 + BMI2 >= Intel Core i7 (Haswell)
x86-64-avx512 Intel Advanced Vector Extensions 512 >= Intel Core i9/i7 (Skylake-X)
x86-64-vnni256 Intel Advanced Vector Extensions 2 + BMI2 + VNNI >= Intel Xeon (Cascade Lake)
x86-64-vnni512 Intel Advanced Vector Extensions 512 + BMI2 + VNNI >= Intel Core i7/i5/i3 (Ice Lake)
filename network
halfkp_256x2-32-32 halfkp_256x2-32-32
filename usage
learn training data generator + trainer with blas (training is fast)
profile-learn training data generator + trainer with blas (training is fast) and PGO build

stockfish-nnue-2020-08-30-rotate180-flip_rank

stockfish-nnue-2020-08-21-rotate180-flip_rank

21 Aug 00:40
Compare
Choose a tag to compare

This is a beta release to check the issue in official-stockfish#3021. Please don't use for other purpose.

stockfish-nnue-2020-08-11

11 Aug 06:02
Compare
Choose a tag to compare

Changes:

  • Merged the official Stockfish master branch. (27b593a)
  • convert_bin Clamped score between -32,000 to 32,000. Thank you, tttak!
  • convert_bin Excluded invalid fens. Thank you, tttak!
  • convert_bin Excluded invlaid moves. Thank you, tttak!
  • gensfen Fixed a bug that the random seed is always constant. (#68)
  • gensfen Fixed a bug that the training data generator does not use EGTB. Thank you, linox! (#67)
  • gensfen Fixed a bug that the training data generator crashes when eval_limit is high. (#77)
  • gensfen detect_draw_by_consecutive_low_score option is added. If detect_draw_by_consecutive_low_score is set to 1, the training data generator adjudicates game to a draw if the last 4 moves of each engine has a score of zero starting at ply 80. The default value is 0. Thank you, linox.
  • gensfen detect_draw_by_insufficient_mating_material option is added. If detect_draw_by_insufficient_mating_material is set to 1, the training data generator terminates the game early and not wait for 2-fold repetition in KvK, KBvK/KvKB or KNvK/KvKN and KBvKB (same bishop color). The default value is 0. Thank you, linox.
  • gensfen Renamed use_draw_in_training_data_generation option to write_out_draw_game_in_training_data_generation. The old option name is still available.
  • learn Renamed use_draw_in_training to use_draw_games_in_training. The old option name is still available.
  • learn Renamed use_draw_in_validation to use_draw_games_in_validation. The old option name is still available.
  • learn Renamed use_hash_in_training to skip_duplicated_positions_in_training. The old option name is still available.

The network parameter file is not included in this release. Please download the strongest network parameter file on fishtest (https://tests.stockfishchess.org/nns). If there are questions, ask in the Stockfish unofficial Discord server (https://discord.gg/ZzJwPv3) at first.

filename CPU instructions Supported CPUs
sse2 Intel Streaming SIMD Extensions 2 >= AMD Athlon 64
sse3 Intel Streaming SIMD Extensions 3 >= Intel Pentium 4 (Prescott model F)
sse3-popcnt Intel Streaming SIMD Extensions 3 + POPCNT >= AMD Phenom
ssse3 Intel Supplemental Streaming SIMD Extensions 3 >= Intel Core 2 Duo (Merom)
sse41 Intel Streaming SIMD Extensions 4.1 >= Intel Core 2 Duo (Penryn)
sse42 Intel Streaming SIMD Extensions 4.2 >= Intel Core i7 (Bloomfield), AMD FX (Bulldozer)
avx2 Intel Advanced Vector Extensions 2 >= AMD APU (Carrizo)
bmi2 Intel Advanced Vector Extensions 2 + BMI2 >= Intel Core i7 (Haswell)
avx512 Intel Advanced Vector Extensions 512 >= Intel Core i9/i7 (Skylake-X)
filename network
halfkp_256x2-32-32 halfkp_256x2-32-32
filename usage
learn training data generator + trainer with blas (training is fast)

stockfish-nnue-2020-07-19

19 Jul 07:40
Compare
Choose a tag to compare

Changes:

  • Enabled profile build. Thank you, discord is a piece of XXXX.
  • Updated README.md. Thank you, xXH4CKST3RXx.
  • Changed the default eval file path so that more GUIs can use Stockfish+NNUE.
  • Added AVX-512 support. Thank you, mstembera.
  • Added SSE3+POPCNT support.
  • Load the parameter set on an `isready' as well. Thank you, discord is a piece of XXXX.

The network parameter file is not included in this release. Please find the strongest network parameter file in the Stockfish unofficial Discord server (https://discord.gg/ZzJwPv3).

filename CPU instructions Supported CPUs
sse2 Intel Streaming SIMD Extensions 2 >= AMD Athlon 64
sse3 Intel Streaming SIMD Extensions 3 >= Intel Pentium 4 (Prescott model F)
sse3-popcnt Intel Streaming SIMD Extensions 3 + POPCNT >= AMD Phenom
ssse3 Intel Supplemental Streaming SIMD Extensions 3 >= Intel Core 2 Duo (Merom)
sse41 Intel Streaming SIMD Extensions 4.1 >= Intel Core 2 Duo (Penryn)
sse42 Intel Streaming SIMD Extensions 4.2 >= Intel Core i7 (Bloomfield), AMD FX (Bulldozer)
avx2 Intel Advanced Vector Extensions 2 >= AMD APU (Carrizo)
bmi2 Intel Advanced Vector Extensions 2 + BMI2 >= Intel Core i7 (Haswell)
avx512 Intel Advanced Vector Extensions 512 >= Intel Core i9/i7 (Skylake-X)
filename network
no-nnue No neural networks included.
halfkp_256x2-32-32 halfkp_256x2-32-32
halfkp_384x2-32-32 halfkp_384x2-32-32
filename usage
nnue-gen-sfen-from-original-eval training data generator
nnue chess engine
nnue-learn training data generator + trainer with blas (training is fast)

EDIT (2020/07/19 21:42): The binaries for AVX-512 were replaced. Please try new binaries if they crash.

stockfish-nnue-2020-07-15

15 Jul 10:56
Compare
Choose a tag to compare

Changes:

  • Fixed a bug that the learn command does not save the final net. Thank you, joergoster.

The nn parameter file is not included in this release. Please find the strongest nn parameter file in the #sf-nnue-dev channge in the Stockfish unofficial Discord server (https://discord.gg/ZzJwPv3).

filename CPU instructions Supported CPUs
sse2 Intel Streaming SIMD Extensions 2 < Core 2 Duo (Merom)
ssse3 Intel Supplemental Streaming SIMD Extensions 3 >= Core 2 Duo (Merom)
sse41 Intel Streaming SIMD Extensions 4.1 >= Core 2 Duo (Penryn)
sse42 Intel Streaming SIMD Extensions 4.2 >= Core i7 (Bloomfield)
avx2 Intel Advanced Vector Extensions 2 Modern AMD Processors
bmi2 Intel Advanced Vector Extensions 2 >= Core i7 (Haswell)
filename network
no-nnue No neural networks included.
halfkp_256x2-32-32 halfkp_256x2-32-32
halfkp_384x2-32-32 halfkp_384x2-32-32
filename usage
nnue-gen-sfen-from-original-eval training data generator.
nnue chess engine
nnue-learn training data generator + trainer with blas (training is fast)

EDIT: 2020-07-15 23:02 There was a bug that halfkp_384x2-32-32 binaries read halfkp_256x2-32-32 net files. Binaries were replaced.

stockfish-nnue-2020-07-13

13 Jul 14:09
Compare
Choose a tag to compare

Changes:

  • Fixed a bug that game results are not correct in pgn_to_plain.py. Thank you, farmersrice.
  • Fixed a bug that gensfen command does not accept the use_draw_in_training_data_generation option.

The nn parameter file is not included in this release. Please find the strongest nn parameter file in the #sf-nnue-dev channge in the Stockfish unofficial Discord server (https://discord.gg/ZzJwPv3).

filename CPU instructions Supported CPUs
sse2 Intel Streaming SIMD Extensions 2 < Core 2 Duo (Merom)
ssse3 Intel Supplemental Streaming SIMD Extensions 3 >= Core 2 Duo (Merom)
sse41 Intel Streaming SIMD Extensions 4.1 >= Core 2 Duo (Penryn)
sse42 Intel Streaming SIMD Extensions 4.2 >= Core i7 (Bloomfield)
avx2 Intel Advanced Vector Extensions 2 Modern AMD Processors
bmi2 Intel Advanced Vector Extensions 2 >= Core i7 (Haswell)
filename network
no-nnue No neural networks included.
halfkp_256x2-32-32 halfkp_256x2-32-32
halfkp_384x2-32-32 halfkp_384x2-32-32
filename usage
nnue-gen-sfen-from-original-eval training data generator.
nnue chess engine
nnue-learn training data generator + trainer with blas (training is fast)

stockfish-nnue-2020-07-11

11 Jul 11:46
Compare
Choose a tag to compare

stockfish-nnue-2020-07-11

filename CPU instructions Supported CPUs
sse2 Intel Streaming SIMD Extensions 2 < Core 2 Duo (Merom)
ssse3 Intel Supplemental Streaming SIMD Extensions 3 >= Core 2 Duo (Merom)
sse41 Intel Streaming SIMD Extensions 4.1 >= Core 2 Duo (Penryn)
sse42 Intel Streaming SIMD Extensions 4.2 >= Core i7 (Bloomfield)
avx2 Intel Advanced Vector Extensions 2 Modern AMD Processors
bmi2 Intel Advanced Vector Extensions 2 >= Core i7 (Haswell)
filename network
no-nnue No neural networks included.
halfkp_256x2-32-32 halfkp_256x2-32-32
halfkp_384x2-32-32 halfkp_384x2-32-32
filename usage
nnue-gen-sfen-from-original-eval training data generator.
nnue chess engine
nnue-learn training data generator + trainer with blas (training is fast)

Changes:

  • Changed the default network parameter file path. Thank you, zz4032.
  • Fix a bug that network parameter files are not saved to EvalSaveDir. Thank you, zz4032.
  • Speed up by disabling eval hash. Thank you, discord is a piece of XXXX.

The nn parameter file is not included in this release. Please find the strongest nn parameter file in the #sf-nnue-dev channge in the Stockfish unofficial Discord server (https://discord.gg/7EyHBCN).

stockfish-nnue-2020-07-10

10 Jul 08:58
Compare
Choose a tag to compare

stockfish-nnue-2020-07-10

filename CPU instructions Supported CPUs
sse2 Intel Streaming SIMD Extensions 2 < Core 2 Duo (Merom)
ssse3 Intel Supplemental Streaming SIMD Extensions 3 >= Core 2 Duo (Merom)
sse41 Intel Streaming SIMD Extensions 4.1 >= Core 2 Duo (Penryn)
sse42 Intel Streaming SIMD Extensions 4.2 >= Core i7 (Bloomfield)
avx2 Intel Advanced Vector Extensions 2 Modern AMD Processors
bmi2 Intel Advanced Vector Extensions 2 >= Core i7 (Haswell)
filename network
no-nnue No neural networks included.
halfkp_256x2-32-32 halfkp_256x2-32-32
halfkp_384x2-32-32 halfkp_384x2-32-32
filename usage
nnue-gen-sfen-from-original-eval training data generator.
nnue chess engine
nnue-learn training data generator + trainer with blas (training is fast)

Changes:

  • Changed to load a net file when a ucinewgame command comes, or EvalFile is set. Thank you, joergoster.
  • Changed the EvalDir option to EvalFile. Thank you, FireFather.
  • Enabled the convert_plain command. Thank you, tttak.
  • Added binaries which support SSE2, SSSE3, SSE4.1, SSE4.2, AVX2 and BMI2. Thank you, discord is a piece of XXXX.
  • Added binaries which support halfkp_384x2-32-32.
  • Unified the nnue-learn and nnue-learn-use-blas into nnue-learn-use-blas.

The nn parameter file is not included in this release. Please find the strongest nn parameter file in the #sf-nnue-dev channge in the Stockfish unofficial Discord server (https://discord.gg/7EyHBCN).

stockfish-nnue-2020-07-06

06 Jul 09:21
Compare
Choose a tag to compare

stockfish-nnue-2020-07-06

filename CPU instructions network architecture usage
stockfish.avx2.halfkp_256x2-32-32.nnue.yyyy-mm-dd.exe avx2 halfkp_256x2-32-32 chess engine
stockfish.avx2.no-nnue.nnue-gen-sfen-from-original-eval.yyyy-mm-dd.exe avx2 none training data generator
stockfish.avx2.halfkp_256x2-32-32.nnue-learn.yyyy-mm-dd.exe avx2 halfkp_256x2-32-32 training data generator + trainer
stockfish.avx2.halfkp_256x2-32-32.nnue-learn-use-blas.yyyy-mm-dd.exe avx2 halfkp_256x2-32-32 training data generator + trainer with blas (training is fast)
stockfish.bmi2.halfkp_256x2-32-32.nnue.yyyy-mm-dd.exe bmi2 halfkp_256x2-32-32 chess engine
stockfish.bmi2.no-nnue.nnue-gen-sfen-from-original-eval.yyyy-mm-dd.exe bmi2 none training data generator
stockfish.bmi2.halfkp_256x2-32-32.nnue-learn.yyyy-mm-dd.exe bmi2 halfkp_256x2-32-32 training data generator + trainer
stockfish.bmi2.halfkp_256x2-32-32.nnue-learn-use-blas.yyyy-mm-dd.exe bmi2 halfkp_256x2-32-32 training data generator + trainer with blas (training is fast)

Changes:

  • Merged UCI_ShowWDL option. Thank you, tttak.
  • Added "nodes" option to the "gensfen" command to specify the number of the nodes to be searched.
    • Note that "depth" and "nodes" can be used at the same time. Please don't forget to set "depth" to a large value like 64 when "nodes" is set.

The nn parameter file is not included in this release. Please find the strongest nn parameter file in the #sf-nnue-dev channge in the Stockfish unofficial Discord server (https://discord.gg/7EyHBCN).