Another one: Strange coincindence: Always mating in move #45 with the Queen.
[Event "Computer chess game"]
[Site "TARN-PC"]
[Date "2008.01.02"]
[Round "-"]
[White "olithink"]
[Black "GNUChess"]
[Result "1-0"]
[TimeControl "40/60"]
1. d4 d5 2. Qd3 Nc6 3. Bf4 e6 4. Nf3 Nge7 5. Nc3 Ng6 6. g3 Nxf4 7. gxf4 Qf6
8. e3 Bd7 9. a3 O-O-O 10. b4 h6 11. b5 Ne7 12. h4 Nf5 13. e4 Ne7 14. Qe3
dxe4 15. Nxe4 Qf5 16. c4 Rg8 17. Bd3 Qg4 18. Ne5 Qg2 19. Ng3 Nf5 20. Bxf5
exf5 21. Kd2 b6 22. Nxf7 Re8 23. Ne5 Bd6 24. Rhg1 Qa8 25. Nh5 Bf8 26. Qc3
Be6 27. Rg6 c5 28. bxc6 Kc7 29. Rag1 Qd8 30. Nxg7 Bxg7 31. Rxg7+ Rxg7 32.
Rxg7+ Re7 33. Rg6 h5 34. d5 Bxd5 35. cxd5 Qxd5+ 36. Qd3 Qc5 37. Rg8 Qa5+
38. Kc1 Qe1+ 39. Kb2 Qxf2+ 40. Kb3 Qf3 41. Nxf3 b5 42. Qd8+ Kxc6 43. Qxe7
Kd5 44. Rg6 b4 45. Qe5#
{White mates} 1-0
OliPerft with divide Option as Pre Version for OliThink 5
Moderator: Ras
-
- Posts: 796
- Joined: Tue Dec 18, 2007 9:38 pm
- Location: Munich, Germany
- Full name: Dr. Oliver Brausch
-
- Posts: 12777
- Joined: Wed Mar 08, 2006 8:57 pm
- Location: Redmond, WA USA
Re: OliPerft with divide Option as Pre Version for OliThink
The solution times are stated as knps (e.g.):OliverBr wrote:Thanks to the tips from Gerd Isenberg I succeeded in improving another 10% :
oliperft 7 "r3k2r/p6p/8/8/8/8/P6P/R3K2R w - - 0 1"
Former: Nodes: 553838205 ms: 1992 knps: 278031
Now: Nodes: 553838205 ms: 1840 knps: 300183
oliperft 6 "r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq -"
Former: Nodes: 8229523927 ms: 50456 knps: 163102
Now: Nodes: 8229523927 ms: 40610 knps: 202647
This was on a 64bit system. On 32bit systems there is hardly any improvement.
http://home.arcor.de/dreamlike/chess/index.html
knps: 278031
In (more usual notation of NPS) we have numbers scaled 1000 larger:
8,229,523,927 / 40.610 = 202,647,720 NPS
Of course, your notation means exactly the same thing. I just wanted to make it clear to someone who was not reading carefully.
-
- Posts: 796
- Joined: Tue Dec 18, 2007 9:38 pm
- Location: Munich, Germany
- Full name: Dr. Oliver Brausch
Re: OliPerft with divide Option as Pre Version for OliThink
[Event "Computer chess game"]
[Site "TARN"]
[Date "2008.01.13"]
[Round "-"]
[White "OliThink 5.0.4"]
[Black "Crafty-20.14"]
[Result "1-0"]
[TimeControl "40/60"]
1. e3 e5 2. Nc3 Nf6 3. d4 exd4 4. exd4 d5 5. a3 Be7 6. Nf3 Bg4 7. h3 Be6 8.
Bd3 Nc6 9. Bb5 O-O 10. Bxc6 bxc6 11. Qd3 c5 12. dxc5 Bxc5 13. b4 Re8 14.
O-O Be7 15. Be3 a5 16. b5 Qd6 17. Ng5 Bd7 18. Bd4 g6 19. Qg3 Nh5 20. Qxd6
Bxd6 21. Nxd5 Bxb5 22. Rfb1 Bc6 23. Nf6+ Nxf6 24. Bxf6 Re2 25. c3 Rae8 26.
h4 h6 27. Nf3 Bxf3 28. gxf3 c6 29. Bd4 Be7 30. Rb6 Bxh4 31. Rxc6 h5 32. a4
Bg5 33. Rc5 Bd8 34. Rb1 Kf8 35. Rb8 f5 36. Rc6 Kf7 37. Rb7+ R8e7 38. Rf6+
Ke8 39. Rxe7+ Bxe7 40. Ra6 Bd8 41. Rxg6 Ra2 42. Rg8+ Kd7 43. Rf8 Rxa4 44.
Rxf5 h4 45. Kh2 Kd6 46. f4 Rc4 47. Rh5 a4 48. Kh3 Kc7 49. f5 Rxd4 50. cxd4
a3 51. Rh6 Kb7 52. Re6 Bg5 53. Re2 Kc6 54. Re8 Kd5 55. Ra8 Be7 56. Ra7 Bf8
57. Kxh4 Kc4 58. f6 Kb3 59. f7 Kc4 60. Ra8 Be7+ 61. Kg4 Kxd4 62. Kf5 Kd3
63. Rd8+ Kc2 64. Ke6 Bxd8 65. f8=Q a2 66. Qa3 Kb1 67. Qb3+ Ka1 68. Qc2 Bg5
69. Kd5 Bh6 70. Kc4 Bf4 71. Kb3 Be5 72. Qxa2#
{White mates} 1-0
[Site "TARN"]
[Date "2008.01.13"]
[Round "-"]
[White "OliThink 5.0.4"]
[Black "Crafty-20.14"]
[Result "1-0"]
[TimeControl "40/60"]
1. e3 e5 2. Nc3 Nf6 3. d4 exd4 4. exd4 d5 5. a3 Be7 6. Nf3 Bg4 7. h3 Be6 8.
Bd3 Nc6 9. Bb5 O-O 10. Bxc6 bxc6 11. Qd3 c5 12. dxc5 Bxc5 13. b4 Re8 14.
O-O Be7 15. Be3 a5 16. b5 Qd6 17. Ng5 Bd7 18. Bd4 g6 19. Qg3 Nh5 20. Qxd6
Bxd6 21. Nxd5 Bxb5 22. Rfb1 Bc6 23. Nf6+ Nxf6 24. Bxf6 Re2 25. c3 Rae8 26.
h4 h6 27. Nf3 Bxf3 28. gxf3 c6 29. Bd4 Be7 30. Rb6 Bxh4 31. Rxc6 h5 32. a4
Bg5 33. Rc5 Bd8 34. Rb1 Kf8 35. Rb8 f5 36. Rc6 Kf7 37. Rb7+ R8e7 38. Rf6+
Ke8 39. Rxe7+ Bxe7 40. Ra6 Bd8 41. Rxg6 Ra2 42. Rg8+ Kd7 43. Rf8 Rxa4 44.
Rxf5 h4 45. Kh2 Kd6 46. f4 Rc4 47. Rh5 a4 48. Kh3 Kc7 49. f5 Rxd4 50. cxd4
a3 51. Rh6 Kb7 52. Re6 Bg5 53. Re2 Kc6 54. Re8 Kd5 55. Ra8 Be7 56. Ra7 Bf8
57. Kxh4 Kc4 58. f6 Kb3 59. f7 Kc4 60. Ra8 Be7+ 61. Kg4 Kxd4 62. Kf5 Kd3
63. Rd8+ Kc2 64. Ke6 Bxd8 65. f8=Q a2 66. Qa3 Kb1 67. Qb3+ Ka1 68. Qc2 Bg5
69. Kd5 Bh6 70. Kc4 Bf4 71. Kb3 Be5 72. Qxa2#
{White mates} 1-0
-
- Posts: 28353
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: OliPerft with divide Option as Pre Version for OliThink
Can you quote real nodes per seconds that your search visits, rather than counting virtual nodes it skips due to hash pruning?
We are very curious to know if your move generator is any good, and from reporting non-visited nodes, there is no way we could ever tell...
We are very curious to know if your move generator is any good, and from reporting non-visited nodes, there is no way we could ever tell...
-
- Posts: 796
- Joined: Tue Dec 18, 2007 9:38 pm
- Location: Munich, Germany
- Full name: Dr. Oliver Brausch
-
- Posts: 796
- Joined: Tue Dec 18, 2007 9:38 pm
- Location: Munich, Germany
- Full name: Dr. Oliver Brausch
Re: OliPerft with divide Option as Pre Version for OliThink
Even I annoy some people... I am just too happy when doing Crafty 
Note: There isn't any evaluation except for mobility.
Note2: Of course OliThink 5.0.4 mostly loses against Crafty, but the wins are always very spectacular due to the simple mobility-only evaluation.
[Event "Computer chess game"]
[Site "TARN"]
[Date "2008.01.13"]
[Round "-"]
[White "Crafty-20.14"]
[Black "OliThink 5.0.4"]
[Result "0-1"]
[TimeControl "40/60"]
1. Nf3 e6 2. e4 b6 3. d4 Nf6 4. e5 Ne4 5. Bd3 Bb7 6. Qe2 f5 7. Bf4 d5 8.
Nbd2 Nd7 9. O-O-O Be7 10. h4 a5 11. Bxe4 dxe4 12. Ng5 Nf8 13. Qh5+ Kd7 14.
d5 Bxd5 15. c4 Ng6 16. Bh2 Bxg5 17. hxg5 Kc8 18. cxd5 Qxd5 19. Kb1 Qd3+ 20.
Ka1 Qc2 21. Qe2 Rd8 22. g4 a4 23. a3 Rd3 24. gxf5 exf5 25. e6 Kb7 26. Bg3
Nf8 27. e7 Ne6 28. Ka2 Re8 29. g6 hxg6 30. Qe1 Rxe7 31. Rc1 Qxd2 32. Be5
Qxe1 33. Rhxe1 Nc5 34. Bc3 Nb3 35. Rc2 g5 36. Rg1 g4 37. Re2 Red7 38. Re3
c5 39. Rge1 Rd1 40. Rxd1 Rxd1 41. Re1 Rxe1 42. Bxe1 Nc1+ 43. Kb1 Nd3 44.
Bc3 e3 45. fxe3 g3 46. Kc2 g2 47. Kxd3 g1=Q 48. Ke2 Kc6 49. Bd2 Kd5 50. Bc3
Qg2+ 51. Kd1 Kc4 52. Kc1 Qe2 53. Bd2 Kb3 54. e4 Qf1+ 55. Be1 Qxe1#
{Black mates} 0-1

Note: There isn't any evaluation except for mobility.
Note2: Of course OliThink 5.0.4 mostly loses against Crafty, but the wins are always very spectacular due to the simple mobility-only evaluation.
[Event "Computer chess game"]
[Site "TARN"]
[Date "2008.01.13"]
[Round "-"]
[White "Crafty-20.14"]
[Black "OliThink 5.0.4"]
[Result "0-1"]
[TimeControl "40/60"]
1. Nf3 e6 2. e4 b6 3. d4 Nf6 4. e5 Ne4 5. Bd3 Bb7 6. Qe2 f5 7. Bf4 d5 8.
Nbd2 Nd7 9. O-O-O Be7 10. h4 a5 11. Bxe4 dxe4 12. Ng5 Nf8 13. Qh5+ Kd7 14.
d5 Bxd5 15. c4 Ng6 16. Bh2 Bxg5 17. hxg5 Kc8 18. cxd5 Qxd5 19. Kb1 Qd3+ 20.
Ka1 Qc2 21. Qe2 Rd8 22. g4 a4 23. a3 Rd3 24. gxf5 exf5 25. e6 Kb7 26. Bg3
Nf8 27. e7 Ne6 28. Ka2 Re8 29. g6 hxg6 30. Qe1 Rxe7 31. Rc1 Qxd2 32. Be5
Qxe1 33. Rhxe1 Nc5 34. Bc3 Nb3 35. Rc2 g5 36. Rg1 g4 37. Re2 Red7 38. Re3
c5 39. Rge1 Rd1 40. Rxd1 Rxd1 41. Re1 Rxe1 42. Bxe1 Nc1+ 43. Kb1 Nd3 44.
Bc3 e3 45. fxe3 g3 46. Kc2 g2 47. Kxd3 g1=Q 48. Ke2 Kc6 49. Bd2 Kd5 50. Bc3
Qg2+ 51. Kd1 Kc4 52. Kc1 Qe2 53. Bd2 Kb3 54. e4 Qf1+ 55. Be1 Qxe1#
{Black mates} 0-1
-
- Posts: 28353
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: OliPerft with divide Option as Pre Version for OliThink
And to interpret the numbers:
What was your hardware (clock frequency, CPU type)?
Do you make and unmake the last ply, or only generate the moves and put them in a move list, or just count how many moves there are on that ply?
-
- Posts: 3196
- Joined: Fri May 26, 2006 3:00 am
- Location: WY, USA
- Full name: Michael Sherwin
Re: OliPerft with divide Option as Pre Version for OliThink
Now the foot is in the other shoe!hgm wrote:And to interpret the numbers:
What was your hardware (clock frequency, CPU type)?
Do you make and unmake the last ply, or only generate the moves and put them in a move list, or just count how many moves there are on that ply?

Now you should understand my complaint about not following Bob's original algorithm for the perft function.
Bob defined the perft function as he is the one that first wrote it.
If we want to know what it 'means' then we should follow one definition.
Bob was first so let us follow his.
If someone wants to put out the highest numbers that they can then let their function have a specific definition and a different name.
$.02
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
-
- Posts: 316
- Joined: Wed Apr 12, 2006 10:47 pm
Re: OliPerft with divide Option as Pre Version for OliThink
Whats knps mean? isn't 5 knps 5000 nodes per second? 

Colin
-
- Posts: 3196
- Joined: Fri May 26, 2006 3:00 am
- Location: WY, USA
- Full name: Michael Sherwin
Re: OliPerft with divide Option as Pre Version for OliThink
yes!cms271828 wrote:Whats knps mean? isn't 5 knps 5000 nodes per second?

If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through