... can You do this: Analyze all possible moves with one/two CPU by playing about 20 moves against strong opponent (another engine?) with 1/20 of allowed time and then pick the move with highest score in endposition.
Can this give stronger play than 100 CPU SMP search may be?!
Jouni
If You have cluster/PC with 100 CPUs...
Moderator: Ras
-
- Posts: 3651
- Joined: Wed Mar 08, 2006 8:15 pm
- Full name: Jouni Uski
-
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: If You have cluster/PC with 100 CPUs...
No. The reason is pretty simple. You spend way too much effort on moves you will never play, while an alpha/beta search using SMP will spend all its time on the move it will play... And go a lot deeper with more correctness...Jouni wrote:... can You do this: Analyze all possible moves with one/two CPU by playing about 20 moves against strong opponent (another engine?) with 1/20 of allowed time and then pick the move with highest score in endposition.
Can this give stronger play than 100 CPU SMP search may be?!
Jouni
-
- Posts: 89
- Joined: Thu Apr 01, 2010 5:28 am
- Location: Omaha, NE
Re: If You have cluster/PC with 100 CPUs...
I haven't done a formal analysis or ran any 1,000,000 game models, but I would guess that the ELO gain going from 4 ply search depth to a 6 ply search depth is higher than going from 22 ply search depth to 24 ply search depth. Or at a minimum, the ELO gain per time is much much higher because going from 4 to 6 ply takes so much less time than going from 22 to 24 ply depth.
Either way, its pretty obvious that we're dealing with diminishing returns. So at some point I would think it is more wasteful to go one ply deeper than it would be to search extra nodes in order to get better information.
One of the ideas that I fancy is using multi-pv searches near the root node (first couple of ply) and use that information to extend the search on those few nodes identified as the top two or three moves. Effectively this would extend the search near the PV...a proven way to increase strength, but as some would criticize, a multi-pv search wastes time searching nodes that you don't need to search. But my 16 core machine needs something to waste its CPU time on because there is very little ELO gain going from 8 to 16 cores with current algorithms.
Either way, its pretty obvious that we're dealing with diminishing returns. So at some point I would think it is more wasteful to go one ply deeper than it would be to search extra nodes in order to get better information.
One of the ideas that I fancy is using multi-pv searches near the root node (first couple of ply) and use that information to extend the search on those few nodes identified as the top two or three moves. Effectively this would extend the search near the PV...a proven way to increase strength, but as some would criticize, a multi-pv search wastes time searching nodes that you don't need to search. But my 16 core machine needs something to waste its CPU time on because there is very little ELO gain going from 8 to 16 cores with current algorithms.
-
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: If You have cluster/PC with 100 CPUs...
How do you search "extra nodes to get better information" if you don't go any deeper?FlavusSnow wrote:I haven't done a formal analysis or ran any 1,000,000 game models, but I would guess that the ELO gain going from 4 ply search depth to a 6 ply search depth is higher than going from 22 ply search depth to 24 ply search depth. Or at a minimum, the ELO gain per time is much much higher because going from 4 to 6 ply takes so much less time than going from 22 to 24 ply depth.
Either way, its pretty obvious that we're dealing with diminishing returns. So at some point I would think it is more wasteful to go one ply deeper than it would be to search extra nodes in order to get better information.
One of the ideas that I fancy is using multi-pv searches near the root node (first couple of ply) and use that information to extend the search on those few nodes identified as the top two or three moves. Effectively this would extend the search near the PV...a proven way to increase strength, but as some would criticize, a multi-pv search wastes time searching nodes that you don't need to search. But my 16 core machine needs something to waste its CPU time on because there is very little ELO gain going from 8 to 16 cores with current algorithms.
-
- Posts: 3651
- Joined: Wed Mar 08, 2006 8:15 pm
- Full name: Jouni Uski
Re: If You have cluster/PC with 100 CPUs...
I still feel, that with lots of CPUs there must be alternative way to use them by playing games may be something like IDEA in Aquarium GUI! E.g. when analysing difficult corr game I trust more 40/60' games than infinite analysis for same time...
Jouni
Jouni
-
- Posts: 28387
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: If You have cluster/PC with 100 CPUs...
The only reports I have seen about this is that the Elo gain per ply is indeed independent on the search depth. So there seem to be no diminishing returns.
But if a Monte-Carlo approach helps or not depends on if the dominant error is tactical or strategic. Searching a few ply deeper will not make the engine rethink its evaluation assumptions. When playing out the game until mate does make it will at some point have to face reality, though. (E.g. compare the Queens vs Knights position, where Rybka, Stockfish and Crafty all think they are at +8.00 or higher, and subsequently are totally slaughtered by an engine with an inferior search, when the game progresses.)
But if a Monte-Carlo approach helps or not depends on if the dominant error is tactical or strategic. Searching a few ply deeper will not make the engine rethink its evaluation assumptions. When playing out the game until mate does make it will at some point have to face reality, though. (E.g. compare the Queens vs Knights position, where Rybka, Stockfish and Crafty all think they are at +8.00 or higher, and subsequently are totally slaughtered by an engine with an inferior search, when the game progresses.)
-
- Posts: 838
- Joined: Thu Jul 05, 2007 5:03 pm
- Location: British Columbia, Canada
Re: If You have cluster/PC with 100 CPUs...
If you have lots of CPUs, it might be interesting to occasionally sometimes a couple of them to doing something like a Proof-Number search for specific goals (mate of course, but maybe also things like get ahead by X amount of material, etc.) I imagine it is hard to scale a regular search across 100 CPUs anyway, so dedicating a couple of them to special purposes might be okay.Jouni wrote:I still feel, that with lots of CPUs there must be alternative way to use them by playing games may be something like IDEA in Aquarium GUI! E.g. when analysing difficult corr game I trust more 40/60' games than infinite analysis for same time...
Jouni
The real question is, what can you do with a couple of CPUs that would actually help more than just participating in the main search?
-
- Posts: 216
- Joined: Thu Mar 09, 2006 9:54 pm
Re: If You have cluster/PC with 100 CPUs...
This seems counter-intuitive to me. I would think going from 5 ply to 6 ply would be a larger elo increase than going from 20 ply to 21 ply, for example. I didn't search for them, but I remember seeing tests that showed there were diminishing returns.hgm wrote:The only reports I have seen about this is that the Elo gain per ply is indeed independent on the search depth. So there seem to be no diminishing returns.
-
- Posts: 28387
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: If You have cluster/PC with 100 CPUs...
The data I have seen were explained better by a constant increase per ply after an initial drop-off at 2-3-4 ply. That very low depths behave differently should not come as a surprise, as some reduction techniques (such as LMR) only take effect above a certain depth, So before that depth, the plies are not as 'thin' as above it.
-
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: If You have cluster/PC with 100 CPUs...
Think about this:Jouni wrote:I still feel, that with lots of CPUs there must be alternative way to use them by playing games may be something like IDEA in Aquarium GUI! E.g. when analysing difficult corr game I trust more 40/60' games than infinite analysis for same time...
Jouni
You are going to build a house. You have 200 people ready to work. Do you want to send groups of workers off to build different houses, then you pick the best one? Or do you want all working on your one house to make it better???
When you search different root moves with different processors you are guaranteeing that most of that effort is wasted, until the first move is searched and you get a bound.