Should TCEC switch to Ponder = ON ?
Moderators: hgm, Rebel, chrisw
-
- Posts: 22
- Joined: Fri Oct 08, 2010 7:10 pm
Re: Should TCEC switch to Ponder = ON ?
Never used these - I will take a look
-
- Posts: 1808
- Joined: Wed Mar 08, 2006 9:19 pm
- Location: Oslo, Norway
Re: Should TCEC switch to Ponder = ON ?
You don't need any modifications to the protocol and/or GUI to do this. You can do what you want easily with any UCI or XBoard compatible GUI today. UCI and XBoard engines are just plain command line programs, and can be run through ssh. The GUI doesn't even need to know that one or both engines are running remotely.overtond wrote:I believe all tests should be done this way {2 PCs connected via a network with ponder ON} - I would like to see the UCI/GUI standard modified to include this method and for all test houses {CCRL/CEGT/etc.} to include this test method in their test service offering.
If anyone knows how to do this today using the GUI application {preferably ShredderClassic GUI} then please let me know.
In my opinion, TCEC should still be played with pondering disabled, as long as the games are played on a single machine. That's what gives the highest quality of play.
-
- Posts: 1833
- Joined: Thu Jun 22, 2006 12:07 am
Re: Should TCEC switch to Ponder = ON ?
Thanks for your replies, everyone. So far it's an overwhelming majority to keep things like it is now.
-
- Posts: 3707
- Joined: Thu Mar 16, 2006 7:10 pm
Re: Should TCEC switch to Ponder = ON ?
Of course ponder ON would be fantastic, but at the cost of losing half the cores ... then it is not so attractive and full power hardware with ponder OFF would be a better choice. If you could get full hardware on 2 equally configured machines that would be really great. I think there are several ways to configure 2 machines to play each other. I know that you can do it via LAN and chess client software, where you give an entire machine an IP address engine and that you can load that engine via the CB GUI. So if you have 2 IP engines you can make them play against each other by using a third computer as a manager. So you could use say a laptop with a CB GUI and then have it play 2 IP engines against each other .... the laptop will play the tournament but the chess CPU usage will be on the two IP addressed machines and full pondering can be used. The two computers could be on your network, but they could also easily be in different continents with a slight configuration of your router and a dyndns address for each engine. Unfortunately nobody seems to have written an easy to use management software for such a thing ... I think it would be very useful.
-
- Posts: 22
- Joined: Fri Oct 08, 2010 7:10 pm
Re: Should TCEC switch to Ponder = ON ?
What you describe was more or less what I had in mind although I thought one could just run a tournament from one of the two machines you refer to and that on each machine you would have an GUI application running {like ShredderClassic GUI} with one loaded with engine A and the other machine's GUI application loaded with engine B.
The advantage of testing using this method is that each machine is not physically connected in terms of RAM, cores, etc. and therefore any influence that could exist by playing two engines against each other on the same machine {hence turning PONDER off} does not exist - engines that benefit greatly from having PONDER ON would fair better under these test conditions.
If WinBoard provides a facility that looks/feels like the above then I will be interested in taking a look at this - hopefully later tonight.
The advantage of testing using this method is that each machine is not physically connected in terms of RAM, cores, etc. and therefore any influence that could exist by playing two engines against each other on the same machine {hence turning PONDER off} does not exist - engines that benefit greatly from having PONDER ON would fair better under these test conditions.
If WinBoard provides a facility that looks/feels like the above then I will be interested in taking a look at this - hopefully later tonight.
-
- Posts: 75
- Joined: Tue Jul 13, 2010 12:06 am
Re: Should TCEC switch to Ponder = ON ?
I agree.Houdini wrote:Ponder ON is the closest to a real tournament situation, so I'm in favor of that.
-
- Posts: 1808
- Joined: Wed Mar 08, 2006 9:19 pm
- Location: Oslo, Norway
Re: Should TCEC switch to Ponder = ON ?
You don't need any sophisticated management software for this. Just create a one-line shell script that connects to the remote machine by SSH and starts an engine there, like this:M ANSARI wrote:Of course ponder ON would be fantastic, but at the cost of losing half the cores ... then it is not so attractive and full power hardware with ponder OFF would be a better choice. If you could get full hardware on 2 equally configured machines that would be really great. I think there are several ways to configure 2 machines to play each other. I know that you can do it via LAN and chess client software, where you give an entire machine an IP address engine and that you can load that engine via the CB GUI. So if you have 2 IP engines you can make them play against each other by using a third computer as a manager. So you could use say a laptop with a CB GUI and then have it play 2 IP engines against each other .... the laptop will play the tournament but the chess CPU usage will be on the two IP addressed machines and full pondering can be used. The two computers could be on your network, but they could also easily be in different continents with a slight configuration of your router and a dyndns address for each engine. Unfortunately nobody seems to have written an easy to use management software for such a thing ... I think it would be very useful.
Code: Select all
#!/bin/bash
ssh tord@1.2.3.4 /path/to/stockfish
-
- Posts: 27808
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Should TCEC switch to Ponder = ON ?
I never tried this myself, (because I only have one machine suitable for Chess), but WinBoard has some command-line options to tell it to do this:overtond wrote:If WinBoard provides a facility that looks/feels like the above then I will be interested in taking a look at this - hopefully later tonight.
-firstHost HOSTNAME
-secondHost HOSTNAME
-remoteUser USERNAME
-remoteShell COMMAND
If you would, for instance, run a tournament with PSWBTM, and include in the winboard.ini file before you start:
-firstHost 192.168.2.4
-remoteUser hgm
-remoteShell ssh
WinBoard would use ' ssh' to log in as 'hgm' on 192.168.2.4 (an IP address in my LAN), and start the engine there with the command it would otherwise use to start it on the local machine. Obviously an ssh server would have to be installed on the remote machine. (You would always need some server to make it approachable from the outside.) And you would need ssh (secure shell) on the local machine. You could also specify another connection tool to be used. (Default is ' rsh' , which is a bit obsolete by now.)
If all participating engines would be installed identically on both machines, the white player would always play on the remote machine, while black would play locally (because you did not specify ' -secondHost' )..
-
- Posts: 1808
- Joined: Wed Mar 08, 2006 9:19 pm
- Location: Oslo, Norway
Re: Should TCEC switch to Ponder = ON ?
That's weird. What's the advantage of using these options rather than simply doing:hgm wrote:If you would, for instance, run a tournament with PSWBTM, and include in the winboard.ini file before you start:
-firstHost 192.168.2.4
-remoteUser hgm
-remoteShell ssh
-fcp "ssh hgm@192.168.2.4 /path/to/micromax"
?
Or, as suggested previously in the thread, just using a trivial shell script that allows the engine to run remotely from any GUI?
-
- Posts: 27808
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Should TCEC switch to Ponder = ON ?
Good point.
Although I have no idea why it was designed like this, I do see a way to exploit it, however. If all engines require the same command to run them on a number of different host, you can switch your entire tourney to a different host by merely giving another -fh or -sh option. (-fh is the short form of -firstHost.) With the other method you would have to change all engine commands.
Perhaps this was indeed the idea all along. In Unix engines are installed such that you can simply name the executable, because they are all in /usr/games, which is in the shell path. So the command to run, say, GNU Chess, would be the same on any Unix computer.
Although I have no idea why it was designed like this, I do see a way to exploit it, however. If all engines require the same command to run them on a number of different host, you can switch your entire tourney to a different host by merely giving another -fh or -sh option. (-fh is the short form of -firstHost.) With the other method you would have to change all engine commands.
Perhaps this was indeed the idea all along. In Unix engines are installed such that you can simply name the executable, because they are all in /usr/games, which is in the shell path. So the command to run, say, GNU Chess, would be the same on any Unix computer.