Hi all,
this is the link to the sources of Stockfish 1.4
http://www.mediafire.com/?dxnggmjf2nj
The main improvement of this version comes from a very deep and extended tuning of evaluation parameters, this huge job has been done mainly by one of the authors (Joona Kiisky) and I have helped him verifying new parameter's values as soon as they were ready.
We really worked well together and the result is this version that I think is nicely improved from 1.3 series.
I would like to thank Heinz van Saanen for his optimisation work on some critical low level functions and for his suggestions to improve and clean up the code.
Also a big "thank you" to Jim Ablett that has been very kind to build for us the release candidates and to help fixing some compile issues, this version is a bit tricky to compile if you want to build a pgo optimized binary for general use and Jim help was really valuable in this regards.
Finally I would like to special thank Tord Romstad, the main and original author, for his suggestions on some subtle SMP issues.
My main goal is to see Stockfish 1.4 to become the strongest open source engine to date in all hardware categories (32/64 bit, single core/SMP, the toughest will be single core 32bit where the Toga's can say something) and with a bit of luck perhaps the strongest free engine too (at least in SMP), with the notable exception of Rybka 2.3.2 that is still on another level...but we are slowly getting there.
Ok, now let's see if we survive the hype.
Stockfish 1.4, the final weapon
Moderators: hgm, Rebel, chrisw
-
- Posts: 18753
- Joined: Thu Mar 09, 2006 6:40 pm
- Location: US of Europe, germany
- Full name: Thorsten Czub
Re: Stockfish 1.4, the final weapon
hype makes might.
What seems like a fairy tale today may be reality tomorrow.
Here we have a fairy tale of the day after tomorrow....
Here we have a fairy tale of the day after tomorrow....
-
- Posts: 9773
- Joined: Wed Mar 08, 2006 8:44 pm
- Location: Amman,Jordan
Re: Stockfish 1.4, the final weapon
Thanks Marco and good luck
Dr.D
Dr.D
_No one can hit as hard as life.But it ain’t about how hard you can hit.It’s about how hard you can get hit and keep moving forward.How much you can take and keep moving forward….
-
- Posts: 1796
- Joined: Thu Sep 18, 2008 10:24 pm
Re: Stockfish 1.4, the final weapon
Hi,
Sorry must be missing something. I downloaded the rar file and expanded it with winrar, but where is the UCI engine?
I go into the sf_1.4 folder and there are a ton of files and none of them look like it's it
(EDIT: ah sorry I guess this is just the source code. UCI to folllow?)
Sorry must be missing something. I downloaded the rar file and expanded it with winrar, but where is the UCI engine?
I go into the sf_1.4 folder and there are a ton of files and none of them look like it's it
(EDIT: ah sorry I guess this is just the source code. UCI to folllow?)
-
- Posts: 1384
- Joined: Fri Jul 14, 2006 7:56 am
- Location: London, England
- Full name: Jim Ablett
Re: Stockfish 1.4, the final weapon
StockFish 1.4 JA
by Marco Costalba, Joona Kiiski.
Based on Glaurung by Tord Romstad
Windows x64 (Intel 11) / win32 (Msvc 8) p.g.o builds
Download:
http://www.mediafire.com/?mihzcymwhlg
Jim.
Re: Stockfish 1.4, the final weapon
Thanks! I'll be trying it out soon. Get an interesting warning though:
you may want to double check that.
Code: Select all
movegen.cpp: In function 'MoveStack*<unnamed>::generate_pawn_blocking_evasions(const Position&, Bitboard, Bitboard, MoveStack*) [with Color Us = WHITE]':
movegen.cpp:123: instantiated from here
movegen.cpp:885: warning: comparison is always false due to limited range of data type
-
- Posts: 568
- Joined: Tue Dec 12, 2006 10:10 am
- Full name: Gary Linscott
Re: Stockfish 1.4, the final weapon
That's almost certainly a bug, good catch by the compiler .
Code: Select all
if (square_rank(to) == TRank8BB)
// should be (or something like this):
if (square_rank(to) == (Us == WHITE ? RANK_8 : RANK_1))
-
- Posts: 2872
- Joined: Wed Mar 08, 2006 10:09 pm
- Location: Germany
- Full name: Werner Schüle
Re: Stockfish 1.4, the final weapon
Thanks Jim!!
...and is this really a bug?
movegen.cpp: In function 'MoveStack*<unnamed>::generate_pawn_blocking_evasions(const Position&, Bitboard, Bitboard, MoveStack*) [with Color Us = WHITE]':
movegen.cpp:123: instantiated from here
movegen.cpp:885: warning: comparison is always false due to limited range of data type
...and is this really a bug?
movegen.cpp: In function 'MoveStack*<unnamed>::generate_pawn_blocking_evasions(const Position&, Bitboard, Bitboard, MoveStack*) [with Color Us = WHITE]':
movegen.cpp:123: instantiated from here
movegen.cpp:885: warning: comparison is always false due to limited range of data type
Werner
-
- Posts: 2684
- Joined: Sat Jun 14, 2008 9:17 pm
Re: Stockfish 1.4, the final weapon
Thanks Jim !Jim Ablett wrote:
StockFish 1.4 JA
by Marco Costalba, Joona Kiiski.
Based on Glaurung by Tord Romstad
Windows x64 (Intel 11) / win32 (Msvc 8) p.g.o builds
Download:
http://www.mediafire.com/?mihzcymwhlg
Jim.
-
- Posts: 2684
- Joined: Sat Jun 14, 2008 9:17 pm
Re: Stockfish 1.4, the final weapon
Thanks, Kenny !krazyken wrote:Thanks! I'll be trying it out soon. Get an interesting warning though:you may want to double check that.Code: Select all
movegen.cpp: In function 'MoveStack*<unnamed>::generate_pawn_blocking_evasions(const Position&, Bitboard, Bitboard, MoveStack*) [with Color Us = WHITE]': movegen.cpp:123: instantiated from here movegen.cpp:885: warning: comparison is always false due to limited range of data type
Yes I confirm it is a bug introduced with patch:
"Convert also generate_pawn_blocking_evasions() to new API" of 7/5/2009
It should have been a "No functional change patch" and actually verifying with
stockfish bench 100 1 12 default depth
shows no difference in node count before and after the patch (22.406.114 nodes). So the bug must shows in very very rare cases.
Actually the bug is that, when generating evasions from check, a promotion move that could block an attacking checker is not generated as it should, but this is very rare. It could happen as example in the below position:
[D] q3K3/3P4/8/8/8/k7/8/8 w - - 0 1
Where due to this bug the move d8=Q is not considered as a possible evasion move for white. Note that if white king would have not been under check the promotion move would had been correctly generated because promotion moves that are not check evasions are handled by another function.
Please, what is the compiler used, under what OS and what is the command line?
I am very interested because me and the others developers have compiled with Intel /gcc (Linux) and MSVC (Windows) with warning level set to maximum but never hit this.
Thanks
Marco