Suggestion for simple extension to the UCI Protocol

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

Moderator: Ras

User avatar
Steve Maughan
Posts: 1299
Joined: Wed Mar 08, 2006 8:28 pm
Location: Florida, USA

Suggestion for simple extension to the UCI Protocol

Post by Steve Maughan »

Back in 2000 when SMK devised the UCI protocol there were few multi threaded engines. Now there is a plethora of the little beasts. And in most of the engines the user can select the number of threads to be used by the GUI. In keeping with the UCI ethos it is clear that the user (i.e. GUI) should be in control of the number of threads an engine uses. So my suggestion would be to add a Threads (or maybe UCI_Threads) option as an official UCI option. This would have the advantage that the GUI could then easily control the number of threads each engine uses. For example suppose that you're wanting to set up an engine v engine match on a quad machine with permanent brain on and both engines using 2 processors. With the current protocol it's a bit of a pain - you need to set up custom engine personalities. On the other hand, if the GUI knows that the UCI_Threads option controls the number of threads there could be simple option to share the threads across the engines (i.e. two each).

What does everyone else think?

Regards,

Steve
User avatar
Jaap Weidemann
Posts: 62
Joined: Mon Aug 14, 2006 3:47 am
Location: Stellenbosch, South Africa

Re: Suggestion for simple extension to the UCI Protocol

Post by Jaap Weidemann »

Hi Steve,

This seems like a good idea. "Threads" would be the logical choice. The UCI Protocol documentation states that an unknown option with the "UCI_" prefix should be ignored by the GUI and not be displayed in the engine's options dialog. Therefore using “UCI_Threads” would cause an engine that supports this feature to be incompatible with a GUI that does not (unless the engine have another normal option that serves the same purpose).

Jaap
User avatar
Steve Maughan
Posts: 1299
Joined: Wed Mar 08, 2006 8:28 pm
Location: Florida, USA

Re: Suggestion for simple extension to the UCI Protocol

Post by Steve Maughan »

Jaap,

Good point. Threads does seem to be a better name for the option.

Steve
User avatar
Jaap Weidemann
Posts: 62
Joined: Mon Aug 14, 2006 3:47 am
Location: Stellenbosch, South Africa

Re: Suggestion for simple extension to the UCI Protocol

Post by Jaap Weidemann »

Hi Steve,

Have you asked Stefan what he thinks of your suggestion?

Jaap
User avatar
Steve Maughan
Posts: 1299
Joined: Wed Mar 08, 2006 8:28 pm
Location: Florida, USA

Re: Suggestion for simple extension to the UCI Protocol

Post by Steve Maughan »

Yes - he was busy getting ready for the launch of Shredder 11 at the time. I'll pass it by him again.

Steve
BubbaTough
Posts: 1154
Joined: Fri Jun 23, 2006 5:18 am

Re: Suggestion for simple extension to the UCI Protocol

Post by BubbaTough »

Speaking of things to add to uci:

offer draw,
resign,
kibitz,

tell me when opponent is offering a draw.
IWB
Posts: 1539
Joined: Thu Mar 09, 2006 2:02 pm

Re: Suggestion for simple extension to the UCI Protocol

Post by IWB »

Hello
BubbaTough wrote:Speaking of things to add to uci:

offer draw,
resign,
kibitz,

tell me when opponent is offering a draw.
One may discuss about draw and resign commands and if they fit into the UCI concept or not, but "kibitz" is a command for a GUI and not for an engine and therefore not related to UCI (yet).

Bye
Ingo
User avatar
Daniel Mehrmann
Posts: 858
Joined: Wed Mar 08, 2006 9:24 pm
Location: Germany
Full name: Daniel Mehrmann

Re: Suggestion for simple extension to the UCI Protocol

Post by Daniel Mehrmann »

BubbaTough wrote:Speaking of things to add to uci:

offer draw,
resign,
kibitz,

tell me when opponent is offering a draw.
Ummm, your suggestions telling me you don't understand UCI and the basic concept behind it.

Best,
Daniel
User avatar
Daniel Mehrmann
Posts: 858
Joined: Wed Mar 08, 2006 9:24 pm
Location: Germany
Full name: Daniel Mehrmann

Re: Suggestion for simple extension to the UCI Protocol

Post by Daniel Mehrmann »

Steve Maughan wrote:Jaap,

Good point. Threads does seem to be a better name for the option.

Steve

That's wrong as well. UCI_EngineCores would be the best. You could have muliple threads and processes...

Best,
Daniel
User avatar
Jaap Weidemann
Posts: 62
Joined: Mon Aug 14, 2006 3:47 am
Location: Stellenbosch, South Africa

Re: Suggestion for simple extension to the UCI Protocol

Post by Jaap Weidemann »

Daniel Mehrmann wrote:UCI_EngineCores would be the best.
Hi Daniel,

As I explained above the use of a "UCI_" prefix option would render such an option useless in a GUI that does not yet support the new command in question.

Jaap