From the mirror universe: Barracuda 2.3

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

peter
Posts: 3185
Joined: Sat Feb 16, 2008 7:38 am
Full name: Peter Martan

Re: From the mirror universe: Barracuda 2.3

Post by peter »

karger wrote:Stockfish-Barracuda x64.... http://www.mediafire.com/?2dp5of6hfardl03
Thanks a lot, John!
Works well in Deep Fritz13 GUI with rather good speed as for n/s.
As for nullmove: my first impression is, it doesn't use nm less than SF2.3.
Here is one of my favorite test positions as for nm- usage together with easy to be pruned away points near to the root.
It's one of Gerhard Josten's great studies:

[D]2n3B1/6p1/2P2p2/1p3P1p/1p1nK2P/3P4/4N2p/7k w - - 0 1

Code: Select all

[Event "?"]
[Site "?"]
[Date "2008.09.11"]
[Round "?"]
[White "Josten"]
[Black "Forum"]
[Result "1-0"]
[SetUp "1"]
[FEN "2n3B1/6p1/2P2p2/1p3P1p/1p1nK2P/3P4/4N2p/7k w - - 0 1"]
[PlyCount "12"]
[EventDate "2008.??.??"]

1. Ke3 (1. Kxd4 $6 Kg2) 1... Nxe2 (1... Kg2 2. Bd5+ Nf3 3. Bxf3+ Kh3 4. Nd4 Nd6
5. c7 Kg3 6. Ke2 Nc8) 2. Kf2 Ne7 (2... Nc3 3. Bb3 Nd6 4. c7 Nc8 5. Kf1 Nb6 6.
Bf7 g6 7. fxg6 Nd1 8. g7 Ne3+ 9. Ke2 Kg1 10. g8=Q+ Ng2 11. Qb8 Nf4+ 12. Kd2 Nc8
13. Qxc8 h1=Q 14. Qg8+ Kh2 15. c8=Q Qf1 16. Kc2 Qxd3+ 17. Kb2 Qe3 18. Qc2+ Kh3
19. Qd1 Kh2 20. Kb1 Qe4+ 21. Qc2+ Qxc2+ 22. Kxc2 b3+ 23. Kxb3 {#16}) (2... Nf4
3. Bb3 g6 4. fxg6 Nd6 5. c7 Ne4+ 6. dxe4 Nd3+ 7. Kf1 Ne5 8. c8=Q Nf3 9. Kf2 Ng1
10. Bd5 Nh3+ 11. Qxh3 b3 12. e5#) 3. c7 (3. Bf7 g6 4. c7 (4. fxg6 $2 Nc3 5. Bb3
Nxc6 6. g7 Ne7) (4. Bb3 gxf5 5. c7 Nc3 6. Kf1 Ncd5 7. Bxd5+ Nxd5 8. c8=Q Ne3+
9. Ke2) 4... Nc3 5. Bb3 gxf5 6. Kf1 Ncd5 7. Bxd5+ Nxd5 8. c8=Q) 3... Nc3 4. Bb3
Nc8 5. Kf1 Ne7 6. Bf7 Nxf5 1-0
The starting position still takes most engines too long, even if 1.Ke3 is found quickly, eval sticks to 0.00 as long as Bb3 isn't found as 3. or 4th move according to the one ore the other Zugumstellung.
So I like to start the engine at one of the variants in braces after

1. Ke3 Nxe2 2. Kf2 Ne7 3. Bf7 g6


[D]8/4nB2/2P2pp1/1p3P1p/1p5P/3P4/4nK1p/7k w - - 0 1


There 4.c7 or 4.Bb3 are to be found directly, 4.fxg6? is to be avoided.
Baracuda:


Analysis by Stockfish 2.3B 64bit SSE4.2

8/4nB2/2P2pp1/1p3P1p/1p5P/3P4/4nK1p/7k w - - 0 1

4.fxg6 Sc3 5.g7 Sd1+ 6.Kf1 Se3+ 7.Kf2 Sd1+
= (0.00) Tiefe: 45/53 00:00:05 36382kN

Don't look at time to depth, hash was full already with 5 minutes of computing before, SFBaracuda doesn' find one of the two possible solutions, eval sticks to 0.00 therefore up to depth 45.

Here is SF2.3:

Code: Select all

8/4nB2/2P2pp1/1p3P1p/1p5P/3P4/4nK1p/7k w - - 0 1

Analysis by Stockfish 2.3 JA 64bit SSE4.2:

...
4.fxg6 Sc3 5.g7 Sd1+ 6.Kf1 Se3+ 7.Kf2 Sd1+ 
  =  (0.00)   Tiefe: 38/15   00:00:56  861mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Sb1 7.c8D Sd2+ 8.Kf2 Sxc8 9.Ld5+ Se4+ 10.dxe4 Sb6 11.Lb7 f4 12.e5+ 
  =  (0.08 ++)   Tiefe: 39/28   00:02:16  2275mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Sb1 7.c8D Sd2+ 8.Kf2 Sxc8 9.Ld5+ Se4+ 10.dxe4 Sb6 11.Lb7 f4 12.e5+ 
  =  (0.16 ++)   Tiefe: 39/28   00:02:25  2438mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Se2 7.Ld5+ Sxd5 8.c8D Sec3 9.De6 b3 10.De1 Sd1 11.Ke2+ Kg2 12.Df1+ Kg3 13.Df3+ Kxh4 14.Kxd1 Se3+ 15.Kc1 Sg4 16.d4 f4 17.d5 b4 18.d6 
  =  (0.28 ++)   Tiefe: 39/28   00:02:31  2538mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Se2 7.c8D Sg3+ 8.Kf2 Sxc8 9.Ld5+ Se4+ 10.dxe4 Sb6 11.Lb7 f4 12.e5+ 
  +/=  (0.46 ++)   Tiefe: 39/68   00:02:39  2651mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Se2 7.c8D Sg3+ 8.Kf2 Sxc8 9.Ld5+ Se4+ 10.dxe4 Sb6 11.Lb7 f4 12.e5+ 
  +/-  (0.73 ++)   Tiefe: 39/68   00:02:44  2735mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Se2 7.c8D Sg3+ 8.Kf2 Sxc8 9.Ld5+ Se4+ 10.dxe4 Sb6 11.Lb7 f4 12.e5+ 
  +/-  (1.14 ++)   Tiefe: 39/68   00:02:50  2828mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Se2 7.c8D Sg3+ 8.Kf2 Sxc8 9.Ld5+ Se4+ 10.dxe4 Sb6 11.Lb7 f4 12.e5+ 
  +-  (1.75 ++)   Tiefe: 39/68   00:02:56  2933mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Se2 7.c8D Sg3+ 8.Kf2 Se4+ 9.dxe4 Sxc8 10.Ld5 Sb6 11.Lb7 f4 12.e5+ 
  +-  (2.67 ++)   Tiefe: 39/68   00:03:04  3071mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Se2 7.c8D Sg3+ 8.Kf2 Se4+ 9.dxe4 Sxc8 10.Ld5 Sb6 11.Lb7 f4 12.e5+ 
  +-  (4.04 ++)   Tiefe: 39/68   00:03:12  3198mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Se2 7.c8D Sg3+ 8.Kf2 Se4+ 9.dxe4 Sxc8 10.Ld5 Sb6 11.Lb7 f4 12.e5+ 
  +-  (6.09 ++)   Tiefe: 39/68   00:03:24  3407mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Se2 7.c8D Sg3+ 8.Kf2 Se4+ 9.dxe4 Sxc8 10.Ld5 Sb6 11.Lb7 f4 12.e5+ 
  +-  (9.16 ++)   Tiefe: 39/72   00:03:50  3862mN
By the way, here is Sting SF, which seems to use nullmove really less than SF itself:

Code: Select all

8/4nB2/2P2pp1/1p3P1p/1p5P/3P4/4nK1p/7k w - - 0 1

Analysis by Sting SF 2_VE 64bit:

...
4.fxg6 Sc3 5.c7 Sd1+ 6.Kf1 Se3+ 7.Kf2 Sg4+ 8.Kf1 Se3+ 
  =  (0.00)   Tiefe: 30/17   00:00:11  107mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 f4 7.c8L Sxc8 8.Lf7 Se4 9.dxe4 f5 10.exf5 f3 11.Lxh5 
  =  (0.08 ++)   Tiefe: 31   00:00:15  169mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 f4 7.c8L Sxc8 8.Lf7 Se4 9.dxe4 f5 10.exf5 f3 11.Lxh5 
  =  (0.16 ++)   Tiefe: 31   00:00:17  194mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 f4 7.c8L Sxc8 8.Lf7 Se4 9.dxe4 f5 10.exf5 f3 11.Lxh5 
  =  (0.28 ++)   Tiefe: 31   00:00:18  209mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 f4 7.c8L Sxc8 8.Lf7 Se4 9.dxe4 f5 10.exf5 f3 11.Lxh5 
  +/=  (0.46 ++)   Tiefe: 31   00:00:19  219mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 f4 7.c8L Sxc8 8.Lf7 Se4 9.dxe4 f5 10.exf5 f3 11.Lxh5 
  +/-  (0.73 ++)   Tiefe: 31   00:00:20  237mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 f4 7.c8L Sxc8 8.Lf7 Se4 9.dxe4 f5 10.exf5 f3 11.Lxh5 
  +/-  (1.14 ++)   Tiefe: 31   00:00:21  250mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 f4 7.c8L Sxc8 8.Lf7 Se4 9.dxe4 f5 10.exf5 f3 11.Lxh5 
  +-  (1.75 ++)   Tiefe: 31   00:00:22  267mN
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 f4 7.c8L Sxc8 8.Lf7 Se4 9.dxe4 f5 10.exf5 f3 11.Lxh5 
  +-  (2.67 ++)   Tiefe: 31   00:00:24  286mN
...
4.c7 Sc3 5.Lb3 gxf5 6.Kf1 Scd5 7.Lxd5+ Sxd5 8.c8D Se3+ 9.Ke2 f4 10.Dc6+ Kg1 11.Df3 h1S 12.Dxf4 Sg2 13.Dxb4 Kh2 14.Dd6+ Kh3 15.De6+ Kg3 16.Kf1 Sxh4 17.De3+ Kg4 18.De4+ Kg5 19.Dxh1 Sf5 20.Dg2+ Kh6 21.Dc6 Kg5 22.Dxb5 Kf4 23.Kf2 Kg4 24.Db4+ Kg5 25.Dd2+ Kg4 26.Dc1 h4 27.Dc4+ Kh3 28.Df4 
  +-  (8.68 ++)   Tiefe: 37   00:01:12  930mN
From version to version SF seems to use more and more nullmove, as for my personal pov, should make comparison with single core once again to show that for positions like that.
Since zugzwang- detection in version 1.6, as fas as I remember, this becomes more and more a leak in search as for zugzwang positions, I think.
Eelco?
Am I right, or could it be due to other pruning techniques too, as for the position shown?
Peter.
lech
Posts: 1136
Joined: Sun Feb 14, 2010 10:02 pm

Re: From the mirror universe: Barracuda 2.3

Post by lech »

peter wrote:From version to version SF seems to use more and more nullmove, as for my personal pov, should make comparison with single core once again to show that for positions like that.
Since zugzwang- detection in version 1.6, as fas as I remember, this becomes more and more a leak in search as for zugzwang positions, I think.
I see that you don't like horses withot taills, even if they are a bit faster. :D
Maybe, I can't be friendly, but let me be useful.
lech
Posts: 1136
Joined: Sun Feb 14, 2010 10:02 pm

Re: From the mirror universe: Barracuda 2.3

Post by lech »

peter wrote:The starting position still takes most engines too long, even if 1.Ke3 is found quickly, eval sticks to 0.00 as long as Bb3 isn't found as 3. or 4th move according to the one ore the other Zugumstellung.
Peter, Sting SF 3 (beta) gets it on my slow PIV (2 threads) very quickly :D :
[d]2n3B1/6p1/2P2p2/1p3P1p/1p1nK2P/3P4/4N2p/7k w - - 0 1

Code: Select all

info depth 27 seldepth 0 multipv 1 score cp -205 lowerbound nodes 195821706 nps
658846 time 297219 pv e4e3 d4e2 e3f2 e2c3 g8b3 c8e7 c6c7 e7c8 f2f1 c8b6 f1f2 b6c8
info nodes 195821706 nps 658846 time 297219
info currmove e4e3 currmovenumber 1
info depth 27 seldepth 0 multipv 1 score cp -164 lowerbound nodes 205789820 nps
664743 time 309578 pv e4e3 d4e2 e3f2 e2c3 g8b3 c8e7 c6c7 e7c8 f2f1 c8b6 f1f2 b6c8
info nodes 205789820 nps 664743 time 309578
info currmove e4e3 currmovenumber 1
info depth 27 seldepth 0 multipv 1 score cp -103 lowerbound nodes 223052486 nps
671181 time 332328 pv e4e3 d4e2 e3f2 e2c3 g8b3 c8e7 c6c7 e7c8 f2f1 c8b6 f1f2 b6c8
info nodes 223052486 nps 671149 time 332344
info currmove e4e3 currmovenumber 1
info depth 27 seldepth 0 multipv 1 score cp -11 lowerbound nodes 251533081 nps 6
73054 time 373719 pv e4e3 d4e2 e3f2 e2c3 g8b3 c8e7 c6c7 e7c8 f2f1 c8b6 f1f2 b6c8

info nodes 251533081 nps 673027 time 373734
info currmove e4e3 currmovenumber 1
info nodes 264665052 nps 670860 time 394516
info currmove e4d4 currmovenumber 2
info currmove e2d4 currmovenumber 3
info currmove e4d5 currmovenumber 4
info currmove e2g3 currmovenumber 5
info currmove g8d5 currmovenumber 6
info currmove c6c7 currmovenumber 7
info currmove g8a2 currmovenumber 8
info currmove e2c3 currmovenumber 9
info currmove e4f4 currmovenumber 10
info currmove e2f4 currmovenumber 11
info currmove g8e6 currmovenumber 12
info currmove g8f7 currmovenumber 13
info currmove g8h7 currmovenumber 14
info currmove g8c4 currmovenumber 15
info currmove g8b3 currmovenumber 16
info currmove e2g1 currmovenumber 17
info currmove e2c1 currmovenumber 18
info depth 27 seldepth 39 multipv 1 score cp 0 nodes 264933502 nps 670744 time 3
94984 pv e4e3 d4e2 e3f2 e2c3 g8b3 c8e7 c6c7 e7c8 f2f1 c8e7 f1f2
info depth 28
info currmove e4e3 currmovenumber 1
info depth 28 seldepth 0 multipv 1 score cp 12 lowerbound nodes 292178915 nps 66
0594 time 442297 pv e4e3 d4e2 e3f2 e2c3 g8b3 c8e7 c6c7 e7c8 f2f1 c8e7 b3f7 e7f5 f7h5 f5g3 f1f2 c3e4 d3e4 g3e4 f2e3 e4d6 c7c8q d6c8 e3f2
info nodes 292178915 nps 660571 time 442312
info currmove e4e3 currmovenumber 1
info depth 28 seldepth 0 multipv 1 score cp 24 lowerbound nodes 308640566 nps 65
5504 time 470844 pv e4e3 d4e2 e3f2 e2c3 g8b3 c8e7 c6c7 e7c8 f2f1 c8e7 b3f7 e7f5 f7h5 f5g3 f1f2 g3h5 c7c8q h5f4 f2f3 f4d3 c8b7 f6f5 b7g7 d3e1 f3f2 e1d3 f2e3
info nodes 308640566 nps 655484 time 470859
info currmove e4e3 currmovenumber 1
info depth 28 seldepth 0 multipv 1 score cp 42 lowerbound nodes 323060412 nps 65
0348 time 496750 pv e4e3 d4e2 e3f2 e2c3 g8b3 c8e7 c6c7 e7c8 f2f1 c8e7 b3f7 e7f5
f7h5 f5g3 f1f2 g3e4 d3e4 c3e4 f2e3 e4d6 c7c8q d6c8 e3f2
info nodes 323060412 nps 650327 time 496766
info currmove e4e3 currmovenumber 1
Maybe, I can't be friendly, but let me be useful.
ZirconiumX
Posts: 1334
Joined: Sun Jul 17, 2011 11:14 am

Re: From the mirror universe: Barracuda 2.3

Post by ZirconiumX »

Evidently Sting 3 must be better than Sting PV because of:

Score : 0.00
Depth : 24/1
Time : 00:01:20
Nodes : 8106962
N/sec : 101084
1. fxg6 Nc3 2. g7 Nd1 3. Kf1 Ne3 4. Kf2 Ng4 5. Kf1 Ne3

Is Sting 3 going to be based on SF2.3?

Matthew:out
Some believe in the almighty dollar.

I believe in the almighty printf statement.
lech
Posts: 1136
Joined: Sun Feb 14, 2010 10:02 pm

Re: From the mirror universe: Barracuda 2.3

Post by lech »

ZirconiumX wrote: Is Sting 3 going to be based on SF2.3?
Matthew:out
Sting SF 3 is based on SF 2.1.1 and in my tests against SF 2.2.2 (my compilation is more than 15 % slower than Jim Ablett's) plays on a similar level +-10 ELO points to SF 2.2.2.
Maybe, I can't be friendly, but let me be useful.
lech
Posts: 1136
Joined: Sun Feb 14, 2010 10:02 pm

Re: From the mirror universe: Barracuda 2.3

Post by lech »

ZirconiumX wrote:Evidently Sting 3 must be better than Sting PV because of:
Score : 0.00
Depth : 24/1
Time : 00:01:20
Nodes : 8106962
N/sec : 101084
1. fxg6 Nc3 2. g7 Nd1 3. Kf1 Ne3 4. Kf2 Ng4 5. Kf1 Ne3
Matthew:out
Sting SF PV solves the Peter's zugzwang positions too, but needs more depths (~32). :D
Maybe, I can't be friendly, but let me be useful.
User avatar
Eelco de Groot
Posts: 4561
Joined: Sun Mar 12, 2006 2:40 am
Full name:   

Re: From the mirror universe: Barracuda 2.3

Post by Eelco de Groot »

Eelco de Groot wrote:I'm not totally happy with this version after all. SMP seems okay and goes through the plies quickly enough though maybe not so fast as Ferrarifish, but it for one thing is not different enough from Stockfish itself. So for the five proud owners of the first version maybe I will make an update after all :!: It would be almost trivial to put in the Rainbow Serpent evaluation, just to make it more different. Well, I don't know maybe I will encounter some problems because I did not synchonize anymore with versions after 10e64e0509 That was Stockfish Master from March 28 2012. Some things after that were included, but not everything. But it should be possible.

Eelco
After the relative disaster of the first Ferrarifish I would like to make a small update, as promised in above post. But the code is rather different again so it may again be as weird as Spock with a beard :) (It is almost December 5th so all the Dutch start speaking in verse and rhyme).

I haven uploaded anything yet though but I am planning to later this weekend, only some source code though, the 32 bit compiles I make for some testing are anyway not interesting. There was at least one correspondence player from India who expressed an interest in a compile of Rainbow Serpent so maybe it is time for another unpolished beta. I had thought about calling it Failhighfish this time, because, and this is a feature, it fails high more often than it fails low. This comes at a small price in speed possibly (don't actually know) but as many users complained about the eval jumps, this is one way of making the output at least more understandable or more easy on the eyes for us poor human chessplayers.

Regards, Eelco
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
User avatar
Eelco de Groot
Posts: 4561
Joined: Sun Mar 12, 2006 2:40 am
Full name:   

Re: From the mirror universe: Barracuda 2.3

Post by Eelco de Groot »

Hello all, here is a link to the sourcecode on the Toga Developers Bulletin Board with a short description, sorry there is no compile available.

Regards, Eelco
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
karger
Posts: 218
Joined: Tue Feb 02, 2010 2:27 am
Full name: John Karger

Re: From the mirror universe: Barracuda 2.3

Post by karger »

Eelco, Please share your Win32 compile of this source code., Thanks, John Karger
User avatar
Eelco de Groot
Posts: 4561
Joined: Sun Mar 12, 2006 2:40 am
Full name:   

Re: From the mirror universe: Barracuda 2.3

Post by Eelco de Groot »

karger wrote:Eelco, Please share your Win32 compile of this source code., Thanks, John Karger
Sure John, I have uploaded my own testbuild 67 to the same post on TDDB. It is not very fast. I could not upload an .exe file so it is packed as an archive. It is called still Barracuda that is the name I gave to the MSVC 2005 project.
The code does compile with MSVC here, I do get 17 warnings every time I compile again, some things are from later SF master changes, but nothing fatal here.

Regards, Eelco
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan