New UCI Engine: Demolito

Discussion about chess-playing software (engines, hosts, opening books, platforms, etc...)

Re: New UCI Engine: Demolito

Postby H.G.Muller » Tue Mar 28, 2017 7:48 pm

User923005 wrote:Your engine is the only one that ever crashed from my wrong sequence.

That is probably because it most definitely is a UCI violation to crash. The specs say that when you receive a command that should not come at that time, you should simply ignore it. Crashing does not really count as ignoring.

A 'ucinewgame' doesn't seem to be really forbidden in this situation, though. The specs only say that an 'isready' is required before the engine is set searching. 'ucinewgame' doesn't really set it searching.

Code: Select all
   This command is also required once before the engine is asked to do any search
   to wait for the engine to finish initializing.

The formulation furthermore suggests that this is only for timing reasons, to prevent the GUI sets the engine's clock running while it is still tied up in other tasks.
H.G.Muller
 
Posts: 167
Joined: Sun Jul 14, 2013 10:00 am

Re: New UCI Engine: Demolito

Postby lucasart » Wed Mar 29, 2017 11:29 am

H.G.Muller wrote:
User923005 wrote:Your engine is the only one that ever crashed from my wrong sequence.

That is probably because it most definitely is a UCI violation to crash. The specs say that when you receive a command that should not come at that time, you should simply ignore it. Crashing does not really count as ignoring.

A 'ucinewgame' doesn't seem to be really forbidden in this situation, though. The specs only say that an 'isready' is required before the engine is set searching. 'ucinewgame' doesn't really set it searching.

Code: Select all
   This command is also required once before the engine is asked to do any search
   to wait for the engine to finish initializing.

The formulation furthermore suggests that this is only for timing reasons, to prevent the GUI sets the engine's clock running while it is still tied up in other tasks.

Seems you're right. Only isready after ucinewgame is mandated. Before is not mandated, but only shown in the example section. I just pushed a fix:
https://github.com/lucasart/Demolito/commit/60167a5e2f6d7d4143ef694851f0c89e0b821ac1
"Talk is cheap. Show me the code." -- Linus Torvalds.
lucasart
 
Posts: 190
Joined: Mon Dec 17, 2012 1:09 pm

Re: New UCI Engine: Demolito

Postby lucasart » Mon Apr 03, 2017 12:08 pm

Here are some Linux compiles:
  • haswell: The fastest version, for Intel Haswell architecture. Use this, if it works on your machine.
  • nehalem: A little bit slower than the Haswell version (-2.5%), compatible with Nehalem architecture, the first Intel with 64-bit and POPCNT. Use this, if the Haswell doesn't work.
  • core2: Much slower than the Haswell version (18.4%), but compatible with Intel Core Duo, the first Intel 64-bit (without POPCNT hence the slowness). Use if all else fails.
PS: No 32-bit compile. Sorry, but I won't waste my time making the code 32-bit compatible for people running a 32-bit OS on a 64-bit machine...
Attachments
Demolito.tar.gz
Linux compiles
(122.57 KiB) Downloaded 7 times
"Talk is cheap. Show me the code." -- Linus Torvalds.
lucasart
 
Posts: 190
Joined: Mon Dec 17, 2012 1:09 pm

Previous

Return to Engines, GUIs, Books and Platforms

Who is online

Users browsing this forum: No registered users and 1 guest