Author: Bruce Moreland
Date: 09:27:34 02/10/99
Go up one level in this thread
On February 09, 1999 at 16:07:10, José de Jesús García Ruvalcaba wrote: >On February 09, 1999 at 13:41:10, Jay Scott wrote: > >> >>On February 07, 1999 at 18:30:17, Robert Hyatt wrote: >> >>>... when I do a probe, I _know_ I will get a result. So >>>the search will definitely terminate here, with win/lose/draw scores. But I >>>can't really go on until I know which... because of alpha/beta.... >> >>In principle you could go on nondeterministically, the same way modern >>processors go on through a conditional branch before they've calculated >>whether the branch is taken. >> >>For tablebase lookups, the drill would be: >> >>- start the lookup; it'll take a while >>- predict the value you'll get back >>- keep on searching as if the predicted value were correct >>- when the lookup finishes: >> - if the prediction was good, you're set >> - if the prediction was wrong, you have to roll back and start over: >> - reset the search to that node >> - zap any bad hash entries you made along the way >> - undo any other changes... >> >>I think this would be incredibly bug-prone. I wouldn't dare try it! >>But if you can get the code correct, it would definitely be faster. >> >> Jay > > But with IA-64 the processor will follow both branches simultaneously, there is >no chance for misprediction (only a waste of on the wrong branch). He's not talking about that, he's talking about the case where you are sitting there in the search, blocked on an I/O. He's suggesting assuming a result from the eval function, and continuing the *search* based upon this. You'd return an "exact" eval, which was a guess, and hopefully you'd get back up in the tree somewhere, doing compute-bound nodes, while the I/O was still running. When the I/O comes back, you either determine that the score was in line with your prediction, or you have to somehow get the search back to where it was when you made your wrong prediction, and return the right score this time. This of course would be insanely complicated code to write. My guess is that this is not a place where you'd gain much strength through kamikaze optimization (in this image you are *both* the ship and the airplane). bruce
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.