Octochess r4529

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

User avatar
Codesquid
Posts: 138
Joined: Tue Aug 23, 2011 10:25 pm
Location: Germany

Re: Tim_Jim- What Am I overlooking Here!?

Post by Codesquid »

Werner wrote:Hi Tim,
here the 64bit version does not start in console mode with this command:
octochess-r4558-64-ja.exe --hash 256
Doh, I'm so stupid. Can't even remember the arguments to my own program anymore. --memory it is.
nanos gigantium humeris insidentes
User avatar
Codesquid
Posts: 138
Joined: Tue Aug 23, 2011 10:25 pm
Location: Germany

Re: Tim_Jim- What Am I overlooking Here!?

Post by Codesquid »

Werner wrote: :cry: ok, this is the reason I have had such different results. I could not see the mp feature. This is normally a uci command too.
Setting number of search threads will come in the next version as well.
nanos gigantium humeris insidentes
User avatar
lucasart
Posts: 3232
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: Tim_Jim- What Am I overlooking Here!?

Post by lucasart »

Codesquid wrote:
Werner wrote: :cry: ok, this is the reason I have had such different results. I could not see the mp feature. This is normally a uci command too.
Setting number of search threads will come in the next version as well.
Hello Tim,

Could you do that in a more UCI standard way. For example, your program should respond to the "uci" command by declaring options as follows:

Code: Select all

option name Hash type spin default 32 min 1 max 8192
option name Threads type spin default 1 min 1 max 16
Then, you should respond to something like

Code: Select all

setoption name Hash value 256
setoption name Threads value 2
by resizing the hash table to 256 MB and the number of threads to 2. The names "Hash" and "Threads" are standard and it's best to stick to them (case sensitive).

I understand you started with the CECP protocol. But really CECP is not a protocol, rather a paleolithic heritage, where everything is hacky and nothing is standardized (eg. programd use ini files with no consistency in their format or command line options)

UCI is a modern standard that is somewhat cleaner and easier to implement (more work is done in the GUI less in the engine).

I could be a little biaised, but as an engine developper, I also speak from experience.
User avatar
Codesquid
Posts: 138
Joined: Tue Aug 23, 2011 10:25 pm
Location: Germany

Re: Tim_Jim- What Am I overlooking Here!?

Post by Codesquid »

Could you do that in a more UCI standard way. For example, your program should respond to the "uci" command by declaring options as follows:
Yes, that's what I meant. You could already set the hash size and thread count using program arguments but not through the respective protocols.
I understand you started with the CECP protocol. But really CECP is not a protocol, rather a paleolithic heritage, where everything is hacky and nothing is standardized (eg. programd use ini files with no consistency in their format or command line options)

UCI is a modern standard that is somewhat cleaner and easier to implement (more work is done in the GUI less in the engine).
UCI leaves much to be desired as well. It may be modern and in some ways better than CECP. The document describing UCI is far from an understandable and unambiguous standard though. For example, a good standard contains a syntax description as (A)BNF grammar.

The reason I started with CECP is because it is easier for the human to use from the command-line. In particular, UCI has zero error handling. If I would enter Na1h8, UCI doesn't say what should happen, whereas CECP specifies a way to respond to commands with an error.

Also, my chess GUI of choice is XBoard/Winboard due to being the best open source GUI which uses CECP as native protocol. As horrible as XBoard/Winboard may be, there simply is not a better cross-platform open source chess GUI.
nanos gigantium humeris insidentes
User avatar
Werner
Posts: 2872
Joined: Wed Mar 08, 2006 10:09 pm
Location: Germany
Full name: Werner Schüle

Re: Tim_Jim- What Am I overlooking Here!?

Post by Werner »

Hi Tim,
after using the correct name for the hash command, I now managed to start your program correct inside Arena.
For info: I have used these command line parameters:

--memory 256 --threads 1

best wishes
Werner
User avatar
lucasart
Posts: 3232
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: Tim_Jim- What Am I overlooking Here!?

Post by lucasart »

Codesquid wrote: As horrible as XBoard/Winboard may be, there simply is not a better cross-platform open source chess GUI.
That's true :lol:
Actually I never use a GUI, just play very fast matches with cutechess-cli, but I wish there could be something like Arena that would be open source and cross plateform (and not stupidly slow as Arena is)

cutechess was the best attempt at it, but the project seems to have stopped :S
User avatar
ilari
Posts: 750
Joined: Mon Mar 27, 2006 7:45 pm
Location: Finland

Re: Tim_Jim- What Am I overlooking Here!?

Post by ilari »

lucasart wrote:cutechess was the best attempt at it, but the project seems to have stopped :S
It hasn't stopped. We moved the project to Github: https://github.com/cutechess/cutechess
Even though Arto is still busy serving our country in the army, he's managed to commit a lot of new stuff during the last couple of weeks. I've also been extremely busy, but I'm preparing some big commits that will move the GUI project closer to 1.0.