From 7bc801f34b858b12082f0f676e73eadd5ab78596ca48ad1e8d3e425d6ceafbe8 Mon Sep 17 00:00:00 2001 From: Michael Vetter Date: Wed, 20 Apr 2022 19:23:58 +0000 Subject: [PATCH] - Update to 15: Stockfish 15 continues to push the boundaries of chess, providing unrivalled analysis and playing strength. In our testing, Stockfish 15 is ahead of Stockfish 14 by 36 Elo points and wins nine times more game pairs than it loses. - Add stockfish-remove-net.patch: Don't try to donwload nnue we already have it. OBS-URL: https://build.opensuse.org/package/show/games/stockfish?expand=0&rev=27 --- .gitattributes | 2 +- Stockfish-sf_14.1.tar.gz | 3 -- Stockfish-sf_15.tar.gz | 3 ++ nn-13406b1dcbe0.nnue | 3 -- nn-6877cd24400e.nnue | 3 ++ stockfish-remove-net.patch | 69 ++++++++++++++++++++++++++++++++++++++ stockfish.changes | 11 ++++++ stockfish.spec | 7 ++-- 8 files changed, 92 insertions(+), 9 deletions(-) delete mode 100644 Stockfish-sf_14.1.tar.gz create mode 100644 Stockfish-sf_15.tar.gz delete mode 100644 nn-13406b1dcbe0.nnue create mode 100644 nn-6877cd24400e.nnue create mode 100644 stockfish-remove-net.patch diff --git a/.gitattributes b/.gitattributes index dde2f4c..e02cb9b 100644 --- a/.gitattributes +++ b/.gitattributes @@ -22,4 +22,4 @@ *.zip filter=lfs diff=lfs merge=lfs -text *.zst filter=lfs diff=lfs merge=lfs -text ## Specific LFS patterns -nn-13406b1dcbe0.nnue filter=lfs diff=lfs merge=lfs -text +nn-6877cd24400e.nnue filter=lfs diff=lfs merge=lfs -text diff --git a/Stockfish-sf_14.1.tar.gz b/Stockfish-sf_14.1.tar.gz deleted file mode 100644 index 7a62715..0000000 --- a/Stockfish-sf_14.1.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:11d71018af47ba047175f846be72d8d9878df698e9b5d708ab158cf530633600 -size 187792 diff --git a/Stockfish-sf_15.tar.gz b/Stockfish-sf_15.tar.gz new file mode 100644 index 0000000..f392ad3 --- /dev/null +++ b/Stockfish-sf_15.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0553fe53ea57ce6641048049d1a17d4807db67eecd3531a3749401362a27c983 +size 189578 diff --git a/nn-13406b1dcbe0.nnue b/nn-13406b1dcbe0.nnue deleted file mode 100644 index 081f3fc..0000000 --- a/nn-13406b1dcbe0.nnue +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:13406b1dcbe0a36dfc5e07da51d8db38b7a45d7da43078ec25a7624c2b83236f -size 47001243 diff --git a/nn-6877cd24400e.nnue b/nn-6877cd24400e.nnue new file mode 100644 index 0000000..ebb54f0 --- /dev/null +++ b/nn-6877cd24400e.nnue @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6877cd24400e01b19ff12ae3068ae242152802bdd330e66f7b6703865251d6e3 +size 47001499 diff --git a/stockfish-remove-net.patch b/stockfish-remove-net.patch new file mode 100644 index 0000000..2bc3f11 --- /dev/null +++ b/stockfish-remove-net.patch @@ -0,0 +1,69 @@ +diff -urEbw Stockfish-sf_15/src/Makefile Stockfish-sf_15.new/src/Makefile +--- Stockfish-sf_15/src/Makefile 2022-04-18 22:03:20.000000000 +0200 ++++ Stockfish-sf_15.new/src/Makefile 2022-04-20 21:20:19.092144400 +0200 +@@ -722,7 +722,6 @@ + @echo "" + @echo "help > Display architecture details" + @echo "build > Standard build" +- @echo "net > Download the default nnue net" + @echo "profile-build > Faster build (with profile-guided optimization)" + @echo "strip > Strip executable" + @echo "install > Install executable" +@@ -783,14 +782,14 @@ + endif + + +-.PHONY: help build profile-build strip install clean net objclean profileclean \ ++.PHONY: help build profile-build strip install clean objclean profileclean \ + config-sanity icc-profile-use icc-profile-make gcc-profile-use gcc-profile-make \ + clang-profile-use clang-profile-make + +-build: net config-sanity ++build: config-sanity + $(MAKE) ARCH=$(ARCH) COMP=$(COMP) all + +-profile-build: net config-sanity objclean profileclean ++profile-build: config-sanity objclean profileclean + @echo "" + @echo "Step 1/4. Building instrumented executable ..." + $(MAKE) ARCH=$(ARCH) COMP=$(COMP) $(profile_make) +@@ -817,30 +816,6 @@ + clean: objclean profileclean + @rm -f .depend *~ core + +-# evaluation network (nnue) +-net: +- $(eval nnuenet := $(shell grep EvalFileDefaultName evaluate.h | grep define | sed 's/.*\(nn-[a-z0-9]\{12\}.nnue\).*/\1/')) +- @echo "Default net: $(nnuenet)" +- $(eval nnuedownloadurl := https://tests.stockfishchess.org/api/nn/$(nnuenet)) +- $(eval curl_or_wget := $(shell if hash curl 2>/dev/null; then echo "curl -skL"; elif hash wget 2>/dev/null; then echo "wget -qO-"; fi)) +- @if test -f "$(nnuenet)"; then \ +- echo "Already available."; \ +- else \ +- if [ "x$(curl_or_wget)" = "x" ]; then \ +- echo "Automatic download failed: neither curl nor wget is installed. Install one of these tools or download the net manually"; exit 1; \ +- else \ +- echo "Downloading $(nnuedownloadurl)"; $(curl_or_wget) $(nnuedownloadurl) > $(nnuenet);\ +- fi; \ +- fi; +- $(eval shasum_command := $(shell if hash shasum 2>/dev/null; then echo "shasum -a 256 "; elif hash sha256sum 2>/dev/null; then echo "sha256sum "; fi)) +- @if [ "x$(shasum_command)" != "x" ]; then \ +- if [ "$(nnuenet)" != "nn-"`$(shasum_command) $(nnuenet) | cut -c1-12`".nnue" ]; then \ +- echo "Failed download or $(nnuenet) corrupted, please delete!"; exit 1; \ +- fi \ +- else \ +- echo "shasum / sha256sum not found, skipping net validation"; \ +- fi +- + # clean binaries and objects + objclean: + @rm -f stockfish stockfish.exe *.o ./syzygy/*.o ./nnue/*.o ./nnue/features/*.o +@@ -864,7 +839,7 @@ + + all: $(EXE) .depend + +-config-sanity: net ++config-sanity: + @echo "" + @echo "Config:" + @echo "debug: '$(debug)'" diff --git a/stockfish.changes b/stockfish.changes index f3651d7..9bc3472 100644 --- a/stockfish.changes +++ b/stockfish.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Wed Apr 20 19:17:58 UTC 2022 - Michael Vetter + +- Update to 15: + Stockfish 15 continues to push the boundaries of chess, providing + unrivalled analysis and playing strength. In our testing, Stockfish + 15 is ahead of Stockfish 14 by 36 Elo points and wins nine times + more game pairs than it loses. +- Add stockfish-remove-net.patch: Don't try to donwload nnue + we already have it. + ------------------------------------------------------------------- Sun Mar 27 18:37:33 UTC 2022 - Dirk Müller diff --git a/stockfish.spec b/stockfish.spec index 6abe278..526d6f2 100644 --- a/stockfish.spec +++ b/stockfish.spec @@ -17,9 +17,9 @@ # See evaluate.h > EvalFileDefaultName -%define nnuenet nn-13406b1dcbe0.nnue +%define nnuenet nn-6877cd24400e.nnue Name: stockfish -Version: 14.1 +Version: 15 Release: 0 Summary: Chess engine License: GPL-3.0-or-later @@ -31,6 +31,8 @@ Source10: https://bazaar.launchpad.net/~ubuntu-branches/ubuntu/vivid/%{nam Source11: https://bazaar.launchpad.net/~ubuntu-branches/ubuntu/vivid/%{name}/vivid/download/head:/%{name}.6-20091204230329-yljoyxocuxhxg1ot-76/%{name}.6 # If 'Version' is not set it will display the date as version number. We dont want __DATE__ and Version is set anyways. Patch0: date.patch +# Don't try to download file. We already have it. +Patch1: stockfish-remove-net.patch BuildRequires: dos2unix BuildRequires: gcc-c++ BuildRequires: xz @@ -51,6 +53,7 @@ information about how to use Stockfish with your GUI. %prep %setup -q -n Stockfish-sf_%{version} %patch0 -p1 +%patch1 -p1 cp %{SOURCE1} src/ cp -p %{SOURCE10} %{SOURCE11} .