Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stockfish 9 #1370

Merged
merged 1 commit into from
Jan 31, 2018
Merged

Stockfish 9 #1370

merged 1 commit into from
Jan 31, 2018

Conversation

mstembera
Copy link
Contributor

This is obviously completely up to Marco/maintainers so this pull request is just to open the discussion.

Some reasons for:

  1. Stockfish 8 is now almost 15 months old.
  2. Nice progress of almost 60 Elo has been made.
    http://tests.stockfishchess.org/tests/view/5a673c8a0ebc590d945d5815
  3. Contempt success seems independently confirmed by IPON.
    http://www.inwoba.de/SF.html
    http://www.inwoba.de/C20.html
  4. Others seems to also want a release.
    https://groups.google.com/forum/?fromgroups=#!topic/fishcooking/GTSRVpFWeMU
  5. No active major code rework seems to be pending.

No functional change.
bench: 5783344

No functional change.
bench: 5783344
@anshulongithub
Copy link

anshulongithub commented Jan 26, 2018

Of course, this is totally up to the maintainers, TCEC 11, Division 1 is in progress, and right after that Division Premier will begin where we will have a strong SF playing. Releasing SF9 right after season 11 ends will be just perfect. By then we will also hopefully have some more ELO gaining patches (fingers crossed) and it feels just right to release it at that time. Also, we need to finalize and get some consensus on what the right thing to do is regarding the discussion that is going in #1369 before SF9's release. This is just my opinion.

@mcostalba
Copy link

I am ok with SF 9, we have to decide a dead line, for instance one week, and test for any bug unrelated to ELO (UCI options, compile, etc).

I propose 1/2/2018 for release.

@ChessMan3
Copy link

ChessMan3 commented Jan 26, 2018

@mcostalba
Compile bug: after patch Rewrite benchmark under Windows could not compiled SF with comp=gcc and -flto. It is compiled only in MinGW 4.9.4


MinGW 7.2.0:

Step 2/4. Running benchmark for pgo-build ...
./stockfish bench > /dev/null
terminate called after throwing an instance of 'std::length_error'
what(): basic_string::_M_create

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
make: *** [profile-build] Error 3

@AlexandreMasta
Copy link

AlexandreMasta commented Jan 26, 2018

And what about NTB or Early Mate? Seems these patches are still for decision.

Maybe at least Early Mate should be considered since it is an improvement without apparent downsides.

@DamasClasicas
Copy link

Yes, February 1 is a good time for SF9 release. Why wait more? Let's go SF9!

@atumanian
Copy link

atumanian commented Jan 26, 2018

@anshulongithub,

Also, we need to finalize and get some consensus on what the right thing to do is regarding the discussion that is going in #1369 before SF9's release. This is just my opinion.

This is a very important issue and making a release without fixing it will be a big mistake. The bug will spread to much more users. For example, ChessBomb may do live analysis without changing the contempt setting and without realising the problem.

@Nordlandia
Copy link

Nordlandia commented Jan 26, 2018

@AlexandreMasta good point. Do not forget about dtm syzygy project Ronald started.

@glinscott
Copy link
Contributor

Big +1 for an SF9 release! Huge amount of progress made by the community in the last year.

@Mindbreaker1
Copy link

Mindbreaker1 commented Jan 26, 2018

We should verify all UCI functions.
I think we should check Fischer Random. Make sure it is still strong and functions correctly.
Maybe see where the strength levels are at; maybe weaken the low end.

@CoffeeOne
Copy link

Merging "Early Mate" would be great, since Marco stopped working/finalizing the "natural DB" branch.
I would also merge Elo gaining patches, before Release of SF9, there is now a very good one.

@mstembera
Copy link
Contributor Author

@ChessMan3 @mcostalba
I have opened a new issue for this here
#1375

I also tested these builds:

Windows 10
gcc  7.2.0
make build ARCH=x86-64-modern COMP=gcc
make build ARCH=x86-64 COMP=gcc
make build ARCH=x86-32 COMP=gcc CXX=i686-w64-mingw32-c++

mingw
make build ARCH=x86-64-modern COMP=mingw
make build ARCH=x86-64 COMP=mingw
make build ARCH=x86-32 COMP=mingw CXX=i686-w64-mingw32-c++

make profile-build ARCH=x86-64-modern COMP=mingw
make profile-build ARCH=x86-64 COMP=mingw
make profile-build ARCH=x86-32 COMP=mingw CXX=i686-w64-mingw32-c++
---------------
Ubuntu 17.10
gcc  7.2.0
make build ARCH=x86-64-modern COMP=gcc
make build ARCH=x86-64 COMP=gcc
make profile-build ARCH=x86-64-modern COMP=gcc
make profile-build ARCH=x86-64 COMP=gcc

clang 4.0.1-6
make build ARCH=x86-64-modern COMP=clang
make build ARCH=x86-64 COMP=clang

They all compile fine and produce the correct bench number.

@mcostalba
Copy link

I have merged "early mate". I still think a huge simplification of all that stuff is possible, but Natural TB requires broader testing and validation because it is a more invasive patch (it is a huge simplification indeed). So becuase SF 9 will be out soon, I have 2 choices: merge early mate, pospone after SF9.

I chose to merge it, although testing time before release is not a lot, it has been tested properly already few months ago.

@Yery
Copy link

Yery commented Jan 29, 2018

I had a check how the SF9 candidate performs on mate detection. Here are the results on the 6566 chest positions (1sec/position)

Results for 1 thread
SF7 SF8 Master
2623 2728 2776 (shortest mate found)
3458 3765 3865 (a mate found)

Results for 6 threads
SF7 SF8 Master
3600 3781 3897 (shortest mate found)
4315 4613 4728 (a mate found)

So a nice increase with respect to SF8!

@joergoster
Copy link
Contributor

A Chess960 match over 2,000 games between SF8 and https://github.com/official-stockfish/Stockfish/tree/0a5b03af3f4291c11d1eb28bcfa607471ba81fd1 just finished without any issues, confirming the substantial elo gain and chess960-functionality still working as expected.

Final result

Finished game 2000 (Stockfish8 vs SF9-RC1): 0-1 {Black wins by adjudication}
Score of SF9-RC1 vs Stockfish8: 640 - 243 - 1117  [0.599] 2000
Elo difference: 69.89 +/- 10.04
Finished match

Conditions (via cutechess-cli command):
./cutechess-cli -openings file=chess960_book_3moves.pgn plies=28 order=random -repeat -variant fischerandom -games 2000 -resign movecount=3 score=750 -draw movenumber=34 movecount=8 score=12 -concurrency 3 -ratinginterval 20 -wait 4 -pgnout ./SF9-RC1_SF8_Chess960_30.pgn -engine name=SF9-RC1 cmd=./sf9-rc1 -engine name=Stockfish8 cmd=./stockfish_8_x64_bmi2 -each proto=uci option.Hash=64 option.UCI_Chess960=true option.SyzygyPath=/home/XXXX/syzygy5men/syzygy tc=30+0.3

@AlexandreMasta
Copy link

Pls Marco, take in consideration this PR about contempt -> #1377

It is shown that a different contempt for each color is stronger than just giving a unique contempt for both black and white sides. Tests were made and prove that. Maybe a test at Framework with parameters adjustment boundaries can pass easily since the difference pointed is about 6%.

Cheers!

@Rocky640
Copy link

The 5 test positions listed in https://chessprogramming.wikispaces.com/Perft+Results
had been checked up to level 8 (including the start position).

@mcostalba mcostalba merged commit 378c8bd into official-stockfish:master Jan 31, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.