Answers.Body: <p>I did compiled all versions of Stockfish from 7 to 15.1 (16 and 16.1, latest beta version is already compiled), and when I test in Stockfish 12 (testing in ascending order):</p>
  <pre><code>Stockfish 12 by the Stockfish developers (see AUTHORS file)
  go
  info string NNUE evaluation using nn-82215d0fd0df.nnue enabled
  info depth 1 seldepth 1 multipv 1 score cp 3 nodes 20 nps 10000 tbhits 0 time 2 pv d2d4
  info depth 2 seldepth 2 multipv 1 score cp 50 nodes 42 nps 21000 tbhits 0 time 2 pv d2d4 a7a6
  info depth 3 seldepth 3 multipv 1 score cp 8 nodes 153 nps 76500 tbhits 0 time 2 pv a2a3 e7e6 d2d4
  info depth 4 seldepth 4 multipv 1 score cp 9 nodes 303 nps 101000 tbhits 0 time 3 pv c2c3 c7c5 d2d4 c5d4
  info depth 5 seldepth 5 multipv 1 score cp 9 nodes 532 nps 177333 tbhits 0 time 3 pv c2c3 c7c5 d2d4 c5d4 c3d4
  info depth 6 seldepth 6 multipv 1 score cp 10 nodes 1004 nps 251000 tbhits 0 time 4 pv c2c3 g8f6 d2d4 d7d5 b1d2
  info depth 7 seldepth 7 multipv 1 score cp 37 nodes 1680 nps 280000 tbhits 0 time 6 pv c2c4 e7e5 e2e3 g8f6 g1f3
  info depth 8 seldepth 9 multipv 1 score cp 24 nodes 4717 nps 428818 tbhits 0 time 11 pv c2c4 e7e6 d2d4 d7d5 g1f3 d5c4 e2e3 g8f6 f1c4
  info depth 9 seldepth 13 multipv 1 score cp 35 nodes 7299 nps 456187 tbhits 0 time 16 pv c2c4 c7c5 b1c3 b7b6 e2e4 c8b7 d2d4
  info depth 10 seldepth 12 multipv 1 score cp 44 nodes 15571 nps 486593 tbhits 0 time 32 pv d2d4 g8f6 c2c4 e7e6 g1f3 d7d5 b1c3 d5c4 d1a4 b8d7 a4c4
  info depth 11 seldepth 15 multipv 1 score cp 77 nodes 32300 nps 504687 tbhits 0 time 64 pv e2e4 c7c6 d2d4 d7d5 e4e5 c8f5 g1f3 e7e6
  info depth 12 seldepth 16 multipv 1 score cp 22 nodes 79712 nps 517610 tbhits 0 time 154 pv e2e4 c7c5 b1c3 e7e6 d2d4 c5d4 d1d4 b8c6 d4e3 f8b4 c1d2 g8f6 e4e5
  info depth 13 seldepth 18 multipv 1 score cp 24 nodes 97905 nps 512591 tbhits 0 time 191 pv e2e4 c7c5 c2c3 d7d5 e4d5 d8d5 b1a3 g8f6 g1f3 c8g4 f1e2 e7e6
  info depth 14 seldepth 18 multipv 1 score cp 41 nodes 135890 nps 526705 tbhits 0 time 258 pv e2e4 c7c5 c2c3 e7e6 g1f3 d7d5 e4e5 d8a5 f1e2 c8d7 e1g1 b8c6 d2d4 c5d4 c3d4
  info depth 15 seldepth 21 multipv 1 score cp 25 nodes 239380 nps 534330 tbhits 0 time 448 pv e2e4 c7c5 g1f3 d7d6 c2c3 g8f6 f1d3 g7g6 d3c2 f8g7 d2d4 c5d4 c3d4 e8g8 e1g1 b8c6 b1c3
  info depth 16 seldepth 22 multipv 1 score cp 14 nodes 420597 nps 549082 tbhits 0 time 766 pv e2e4 c7c5 c2c3 g8f6 e4e5 f6d5 f1c4 d5b6 c4e2 b8c6 g1f3 d7d6 d2d4 c5d4 e5d6 e7e5 c3d4 e5d4 f3d4
  info depth 17 seldepth 26 multipv 1 score cp 27 nodes 502334 nps 555679 tbhits 0 time 904 pv e2e4 c7c5 c2c3 g8f6 e4e5 f6d5 g1f3 e7e6 f1c4 d7d6 d2d4 c5d4 e1g1 b8c6 c3d4 d6e5 d4e5 f8c5 b1c3 d5c3
  info depth 18 seldepth 25 multipv 1 score cp 23 nodes 888362 nps 557666 hashfull 431 tbhits 0 time 1593 pv e2e4 c7c5 g1f3 d7d6 d2d4 c5d4 f3d4 g8f6 b1c3 a7a6 f2f4 b7b5 f1e2 e7e5 f4e5 d6e5
  info depth 19 seldepth 24 multipv 1 score cp 42 nodes 1163966 nps 553478 hashfull 537 tbhits 0 time 2103 pv e2e4 e7e5 g1f3 b8c6 d2d4 e5d4 f3d4 g8f6 d4c6 b7c6 b1c3 d7d5 e4d5 f6d5 c3d5 d8d5 d1d5 c6d5 f1b5 c8d7
  stop
  info depth 20 seldepth 32 multipv 1 score cp 25 nodes 2202054 nps 550375 hashfull 824 tbhits 0 time 4001 pv e2e4 e7e5
  bestmove e2e4 ponder e7e5
  </code></pre>
  <p>Usually Stockfish 7-11 go from depth 0 (not show anything except bestmove) to depth 11.</p>
  <p>Edit: After searching through official-stockfish/Stockfish repo for tag sf_11 it DOES check for depth excedds <code>MAX_PLY</code> but doesn't search for <code>MAX_PLY</code> if doesn't pass :</p>
  <pre><code>  while (   ++rootDepth &lt; MAX_PLY
           &amp;&amp; !Threads.stop
           &amp;&amp; !(Limits.depth &amp;&amp; mainThread &amp;&amp; rootDepth &gt; Limits.depth))
  </code></pre>
  <p>Link: <a href="https://github.com/official-stockfish/Stockfish/blob/sf_11/src/search.cpp#L399" rel="nofollow noreferrer"><code>MAX_PLY</code> checking</a></p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-05-16T04:08:25.823Z
Answers.Text: Thanks so much for all the time you spent on compiling all those versions! That was quite an effort, I would imagine
Answers.UserDisplayName: tim bits
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-05-12T09:15:38.540Z
Answers.LastActivityDate: 2024-06-22T15:21:39.893Z
Answers.LastEditDate: 2024-06-22T15:21:39.893Z
Answers.UserDisplayName: winapiadmin
Body: <p>I am working on migrating an existing Java Stockfish wrapper to make it independent of Stockfish version it is working with. Initially it was built based on Stockfish version 10. Now it is not working anymore with the latest version, which is 16.1.</p>
  <p>The reason being is that, back at version 10, at least in the initial position, a plain &quot;go&quot; request would be executed as having depth=9 i.e.:</p>
  <pre><code>Stockfish 10 64 by T. Romstad, M. Costalba, J. Kiiski, G. Linscott
  go
  info depth 1 seldepth 1 multipv 1 score cp 116 nodes 20 nps 20000 tbhits 0 time 1 pv e2e4
  info depth 2 seldepth 2 multipv 1 score cp 112 nodes 54 nps 13500 tbhits 0 time 4 pv e2e4 b7b6
  info depth 3 seldepth 3 multipv 1 score cp 148 nodes 136 nps 27200 tbhits 0 time 5 pv d2d4 d7d6 e2e4
  info depth 4 seldepth 4 multipv 1 score cp 137 nodes 247 nps 49400 tbhits 0 time 5 pv d2d4 e7e6 e2e4 c7c6
  info depth 5 seldepth 5 multipv 1 score cp 77 nodes 1157 nps 192833 tbhits 0 time 6 pv c2c3 d7d5 d2d4 b8c6 c1g5
  info depth 6 seldepth 6 multipv 1 score cp 83 nodes 2250 nps 321428 tbhits 0 time 7 pv e2e4 b8c6 d2d4 d7d6 f1c4 g8f6
  info depth 7 seldepth 7 multipv 1 score cp 67 nodes 4481 nps 497888 tbhits 0 time 9 pv e2e4 e7e5 d2d4 e5d4 d1d4 b8c6 d4d1
  info depth 8 seldepth 8 multipv 1 score cp 60 nodes 7849 nps 713545 tbhits 0 time 11 pv e2e4 e7e5 g1f3 d7d5 d2d4 b8c6 f3e5
  info depth 9 seldepth 8 multipv 1 score cp 60 nodes 9285 nps 773750 tbhits 0 time 12 pv e2e4 e7e5 g1f3 d7d5 d2d4 b8c6 f3e5
  bestmove e2e4 ponder e7e5
  </code></pre>
  <p>At version 16.1 though, a plain &quot;go&quot; request doesn't seem to have any depth i.e. it doesn't  automatically stop until a &quot;stop&quot; command is explicitly issued i.e.:</p>
  <pre><code>Stockfish 16.1 by the Stockfish developers (see AUTHORS file)
  go
  info string NNUE evaluation using nn-baff1ede1f90.nnue
  info string NNUE evaluation using nn-b1a57edbea57.nnue
  info depth 1 seldepth 2 multipv 1 score cp 0 nodes 20 nps 2857 hashfull 0 tbhits 0 time 7 pv d2d4
  info depth 2 seldepth 2 multipv 1 score cp 12 nodes 44 nps 5500 hashfull 0 tbhits 0 time 8 pv a2a3
  info depth 3 seldepth 2 multipv 1 score cp 50 nodes 69 nps 8625 hashfull 0 tbhits 0 time 8 pv d2d4
  ...
  info depth 46 seldepth 56 multipv 1 score cp 22 upperbound nodes 320623368 nps 587728 hashfull 1000 tbhits 0 time 545530 pv d2d4 d7d5
  info depth 46 currmove d2d4 currmovenumber 1
  stop
  info depth 46 seldepth 56 multipv 1 score cp 22 upperbound nodes 342435468 nps 584140 hashfull 1000 tbhits 0 time 586221 pv d2d4 d7d5
  bestmove d2d4 ponder d7d5
  </code></pre>
  <p>I was wondering at which version exactly this change was made?</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-03-14T00:31:49.600Z
Comments.Text: IIRC the "go" command actually executes "go depth 243," so there is a limit.
Comments.UserDisplayName: Hank's back rank
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-03-14T10:34:23.190Z
Comments.Text: @Hank's back rank - Don't think there's anything in the UCI specs to that effect. I think you're probably right that there is a limit (different for different SF versions), but I doubt it's a fixed depth limit. Here is an example for SF8. ![Valid XHTML](file:///C:/Users/martin/OneDrive/Pictures/Screenshots/Screenshot%20(445).png)
Comments.UserDisplayName: Martin Rattigan
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-03-14T10:44:32.723Z
Comments.Text: That didn't work too well, but it's two **go**s terminating at depths 5 and 8.
Comments.UserDisplayName: Martin Rattigan
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-03-23T20:44:34.593Z
Comments.Text: Couldn't find a direct reference in source, but this comment claims that the max SF depth is 245, which is consistently mentioned throughout other comments https://github.com/official-stockfish/Stockfish/issues/2717#issuecomment-1107406692.
Comments.UserDisplayName: Stockfischer
Tags: <stockfish>
Title: Starting which version of Stockfish request for bestmove stopped having fixed depth?
ThreadText: # Starting which version of Stockfish request for bestmove stopped having fixed depth?
  
  (Asked by: username_0 on 2024-03-12)
  
  I am working on migrating an existing Java Stockfish wrapper to make it independent of Stockfish version it is working with. Initially it was built based on Stockfish version 10. Now it is not working anymore with the latest version, which is 16.1.
  The reason being is that, back at version 10, at least in the initial position, a plain "go" request would be executed as having depth=9 i.e.:
  Stockfish 10 64 by T. Romstad, M. Costalba, J. Kiiski, G. Linscott
  go
  info depth 1 seldepth 1 multipv 1 score cp 116 nodes 20 nps 20000 tbhits 0 time 1 pv e2e4
  info depth 2 seldepth 2 multipv 1 score cp 112 nodes 54 nps 13500 tbhits 0 time 4 pv e2e4 b7b6
  info depth 3 seldepth 3 multipv 1 score cp 148 nodes 136 nps 27200 tbhits 0 time 5 pv d2d4 d7d6 e2e4
  info depth 4 seldepth 4 multipv 1 score cp 137 nodes 247 nps 49400 tbhits 0 time 5 pv d2d4 e7e6 e2e4 c7c6
  info depth 5 seldepth 5 multipv 1 score cp 77 nodes 1157 nps 192833 tbhits 0 time 6 pv c2c3 d7d5 d2d4 b8c6 c1g5
  info depth 6 seldepth 6 multipv 1 score cp 83 nodes 2250 nps 321428 tbhits 0 time 7 pv e2e4 b8c6 d2d4 d7d6 f1c4 g8f6
  info depth 7 seldepth 7 multipv 1 score cp 67 nodes 4481 nps 497888 tbhits 0 time 9 pv e2e4 e7e5 d2d4 e5d4 d1d4 b8c6 d4d1
  info depth 8 seldepth 8 multipv 1 score cp 60 nodes 7849 nps 713545 tbhits 0 time 11 pv e2e4 e7e5 g1f3 d7d5 d2d4 b8c6 f3e5
  info depth 9 seldepth 8 multipv 1 score cp 60 nodes 9285 nps 773750 tbhits 0 time 12 pv e2e4 e7e5 g1f3 d7d5 d2d4 b8c6 f3e5
  bestmove e2e4 ponder e7e5
  
  At version 16.1 though, a plain "go" request doesn't seem to have any depth i.e. it doesn't  automatically stop until a "stop" command is explicitly issued i.e.:
  Stockfish 16.1 by the Stockfish developers (see AUTHORS file)
  go
  info string NNUE evaluation using nn-baff1ede1f90.nnue
  info string NNUE evaluation using nn-b1a57edbea57.nnue
  info depth 1 seldepth 2 multipv 1 score cp 0 nodes 20 nps 2857 hashfull 0 tbhits 0 time 7 pv d2d4
  info depth 2 seldepth 2 multipv 1 score cp 12 nodes 44 nps 5500 hashfull 0 tbhits 0 time 8 pv a2a3
  info depth 3 seldepth 2 multipv 1 score cp 50 nodes 69 nps 8625 hashfull 0 tbhits 0 time 8 pv d2d4
  ...
  info depth 46 seldepth 56 multipv 1 score cp 22 upperbound nodes 320623368 nps 587728 hashfull 1000 tbhits 0 time 545530 pv d2d4 d7d5
  info depth 46 currmove d2d4 currmovenumber 1
  stop
  info depth 46 seldepth 56 multipv 1 score cp 22 upperbound nodes 342435468 nps 584140 hashfull 1000 tbhits 0 time 586221 pv d2d4 d7d5
  bestmove d2d4 ponder d7d5
  
  I was wondering at which version exactly this change was made?
  
  **Tags:** stockfish
  
  > **Comments:**
  > **username_1**: IIRC the "go" command actually executes "go depth 243," so there is a limit.  
  > **username_2**: @username_1 - Don't think there's anything in the UCI specs to that effect. I think you're probably right that there is a limit (different for different SF versions), but I doubt it's a fixed depth limit. Here is an example for SF8. ![Valid XHTML](file:///C:/Users/martin/OneDrive/Pictures/Screenshots/Screenshot%20(445).png)  
  > **username_2**: That didn't work too well, but it's two **go**s terminating at depths 5 and 8.  
  > **username_3**: Couldn't find a direct reference in source, but this comment claims that the max SF depth is 245, which is consistently mentioned throughout other comments https://github.com/official-stockfish/Stockfish/issues/2717#issuecomment-1107406692.  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_4 on 2024-05-12. Score: 1 | Accepted answer
  
  I did compiled all versions of Stockfish from 7 to 15.1 (16 and 16.1, latest beta version is already compiled), and when I test in Stockfish 12 (testing in ascending order):
  Stockfish 12 by the Stockfish developers (see AUTHORS file)
  go
  info string NNUE evaluation using nn-82215d0fd0df.nnue enabled
  info depth 1 seldepth 1 multipv 1 score cp 3 nodes 20 nps 10000 tbhits 0 time 2 pv d2d4
  info depth 2 seldepth 2 multipv 1 score cp 50 nodes 42 nps 21000 tbhits 0 time 2 pv d2d4 a7a6
  info depth 3 seldepth 3 multipv 1 score cp 8 nodes 153 nps 76500 tbhits 0 time 2 pv a2a3 e7e6 d2d4
  info depth 4 seldepth 4 multipv 1 score cp 9 nodes 303 nps 101000 tbhits 0 time 3 pv c2c3 c7c5 d2d4 c5d4
  info depth 5 seldepth 5 multipv 1 score cp 9 nodes 532 nps 177333 tbhits 0 time 3 pv c2c3 c7c5 d2d4 c5d4 c3d4
  info depth 6 seldepth 6 multipv 1 score cp 10 nodes 1004 nps 251000 tbhits 0 time 4 pv c2c3 g8f6 d2d4 d7d5 b1d2
  info depth 7 seldepth 7 multipv 1 score cp 37 nodes 1680 nps 280000 tbhits 0 time 6 pv c2c4 e7e5 e2e3 g8f6 g1f3
  info depth 8 seldepth 9 multipv 1 score cp 24 nodes 4717 nps 428818 tbhits 0 time 11 pv c2c4 e7e6 d2d4 d7d5 g1f3 d5c4 e2e3 g8f6 f1c4
  info depth 9 seldepth 13 multipv 1 score cp 35 nodes 7299 nps 456187 tbhits 0 time 16 pv c2c4 c7c5 b1c3 b7b6 e2e4 c8b7 d2d4
  info depth 10 seldepth 12 multipv 1 score cp 44 nodes 15571 nps 486593 tbhits 0 time 32 pv d2d4 g8f6 c2c4 e7e6 g1f3 d7d5 b1c3 d5c4 d1a4 b8d7 a4c4
  info depth 11 seldepth 15 multipv 1 score cp 77 nodes 32300 nps 504687 tbhits 0 time 64 pv e2e4 c7c6 d2d4 d7d5 e4e5 c8f5 g1f3 e7e6
  info depth 12 seldepth 16 multipv 1 score cp 22 nodes 79712 nps 517610 tbhits 0 time 154 pv e2e4 c7c5 b1c3 e7e6 d2d4 c5d4 d1d4 b8c6 d4e3 f8b4 c1d2 g8f6 e4e5
  info depth 13 seldepth 18 multipv 1 score cp 24 nodes 97905 nps 512591 tbhits 0 time 191 pv e2e4 c7c5 c2c3 d7d5 e4d5 d8d5 b1a3 g8f6 g1f3 c8g4 f1e2 e7e6
  info depth 14 seldepth 18 multipv 1 score cp 41 nodes 135890 nps 526705 tbhits 0 time 258 pv e2e4 c7c5 c2c3 e7e6 g1f3 d7d5 e4e5 d8a5 f1e2 c8d7 e1g1 b8c6 d2d4 c5d4 c3d4
  info depth 15 seldepth 21 multipv 1 score cp 25 nodes 239380 nps 534330 tbhits 0 time 448 pv e2e4 c7c5 g1f3 d7d6 c2c3 g8f6 f1d3 g7g6 d3c2 f8g7 d2d4 c5d4 c3d4 e8g8 e1g1 b8c6 b1c3
  info depth 16 seldepth 22 multipv 1 score cp 14 nodes 420597 nps 549082 tbhits 0 time 766 pv e2e4 c7c5 c2c3 g8f6 e4e5 f6d5 f1c4 d5b6 c4e2 b8c6 g1f3 d7d6 d2d4 c5d4 e5d6 e7e5 c3d4 e5d4 f3d4
  info depth 17 seldepth 26 multipv 1 score cp 27 nodes 502334 nps 555679 tbhits 0 time 904 pv e2e4 c7c5 c2c3 g8f6 e4e5 f6d5 g1f3 e7e6 f1c4 d7d6 d2d4 c5d4 e1g1 b8c6 c3d4 d6e5 d4e5 f8c5 b1c3 d5c3
  info depth 18 seldepth 25 multipv 1 score cp 23 nodes 888362 nps 557666 hashfull 431 tbhits 0 time 1593 pv e2e4 c7c5 g1f3 d7d6 d2d4 c5d4 f3d4 g8f6 b1c3 a7a6 f2f4 b7b5 f1e2 e7e5 f4e5 d6e5
  info depth 19 seldepth 24 multipv 1 score cp 42 nodes 1163966 nps 553478 hashfull 537 tbhits 0 time 2103 pv e2e4 e7e5 g1f3 b8c6 d2d4 e5d4 f3d4 g8f6 d4c6 b7c6 b1c3 d7d5 e4d5 f6d5 c3d5 d8d5 d1d5 c6d5 f1b5 c8d7
  stop
  info depth 20 seldepth 32 multipv 1 score cp 25 nodes 2202054 nps 550375 hashfull 824 tbhits 0 time 4001 pv e2e4 e7e5
  bestmove e2e4 ponder e7e5
  
  Usually Stockfish 7-11 go from depth 0 (not show anything except bestmove) to depth 11.
  Edit: After searching through official-stockfish/Stockfish repo for tag sf_11 it DOES check for depth excedds MAX_PLY but doesn't search for MAX_PLY if doesn't pass :
    while (   ++rootDepth < MAX_PLY
           && !Threads.stop
           && !(Limits.depth && mainThread && rootDepth > Limits.depth))
  
  Link: MAX_PLY checking
  
  > **Comments:**
  > **username_0**: Thanks so much for all the time you spent on compiling all those versions! That was quite an effort, I would imagine  
  
  ---
  
  