cutechess-cli 0.7.0

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

Moderators: hgm, Rebel, chrisw

User avatar
Kotlov
Posts: 266
Joined: Fri Jul 10, 2015 9:23 pm
Location: Russia

Re: cutechess-cli 0.7.0

Post by Kotlov »

ilari wrote:
Kotlov wrote:How I made result table with cutechess-cli?
By default cutechess-cli outputs a simple result table when the tournament finishes and/or at specified intervals. But if you want something more detailed then you can save the games in a PGN file and pass that file to Ordo, BayesElo or EloStat.
Thx
melajara
Posts: 213
Joined: Thu Dec 16, 2010 4:39 pm

Re: cutechess-cli 0.7.0

Post by melajara »

Ferdy wrote:
melajara wrote:Ferdinand, could you make available your Windows compile with the GUI somewhere for downloading it?

The 32bits official compile doesn't include the GUI and AFAIK there is not much choice for a lightweight chess engine GUI manager, I'm currrently using Tarrasch but it's buggy.
I am not familiar on this like what dll files will be included when run on other computer.
We need info from Ilari. Or we will just do trial and error method.
I will prepare to upload the file, perhaps tomorrow.
Thank you very much.
Most probably, the Qt dlls included in the 32bit official release, or their 64bit equivalent will do fine. As for the Windows specific dlls, I will grab them myself if missing, don't worry about that.
Per ardua ad astra
User avatar
ilari
Posts: 750
Joined: Mon Mar 27, 2006 7:45 pm
Location: Finland

Re: cutechess-cli 0.7.0

Post by ilari »

melajara wrote:
Ferdy wrote:
melajara wrote:Ferdinand, could you make available your Windows compile with the GUI somewhere for downloading it?

The 32bits official compile doesn't include the GUI and AFAIK there is not much choice for a lightweight chess engine GUI manager, I'm currrently using Tarrasch but it's buggy.
I am not familiar on this like what dll files will be included when run on other computer.
We need info from Ilari. Or we will just do trial and error method.
I will prepare to upload the file, perhaps tomorrow.
Thank you very much.
Most probably, the Qt dlls included in the 32bit official release, or their 64bit equivalent will do fine. As for the Windows specific dlls, I will grab them myself if missing, don't worry about that.
The GUI actually requires a few more Qt dlls than CLI - at least QtSvg and QtWidget.
User avatar
Ozymandias
Posts: 1535
Joined: Sun Oct 25, 2009 2:30 am

Re: cutechess-cli 0.7.0

Post by Ozymandias »

ilari wrote:I actually managed to reproduce a similar problem but without warning messages: when I used really fast games, at some point the PGN output would just stop.
Did this ever happen with 0.5.1? I noticed that, over the course of a week, some engines would crash, and the old process wouldn't terminate upon recovery (I always use this parameter). As a result, the PGN would stall, but that was never a problem. I would either terminate the (engine) process from the task manager, or failing to do so, cutechess would finish the tournament and unload from RAM, all the pending games, to the PGN. The executable would just grow in size, as long as there was enough system memory, that's all.
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: cutechess-cli 0.7.0

Post by Ferdy »

ilari wrote:
Ferdy wrote:Here is the output from updated code. It is all about PGN file cannot be opened.

Code: Select all

Started game 257 of 900 (D2015.1.35.247 vs Arasan_18_x64_popcnt)
Finished game 254 (Gaviota v1.0 64bit vs D2015.1.35.247): 0-1 {Black wins by adjudication}
Started game 258 of 900 (Arasan_18_x64_popcnt vs D2015.1.35.247)
Finished game 256 (SmarThink v1.7 vs D2015.1.35.247): 0-1 {White loses on time}
Finished game 255 (D2015.1.35.247 vs SmarThink v1.7): 1-0 {Black loses on time}
Started game 260 of 900 (DiscoCheck 5.2.1 vs D2015.1.35.247)
Started game 259 of 900 (D2015.1.35.247 vs DiscoCheck 5.2.1)
Started game 261 of 900 (D2015.1.35.247 vs Hakkapeliitta 3.0 x64)
Finished game 258 (Arasan_18_x64_popcnt vs D2015.1.35.247): 1/2-1/2 {Draw by 3-fold repetition}
Warning: PGN file cannot be opened
Warning: Can't write to PGN file .\games\g1.pgn
Warning: PGN file cannot be opened
Warning: Can't write to PGN file .\games\g1.pgn
Warning: PGN file cannot be opened
Warning: Can't write to PGN file .\games\g1.pgn
Finished game 250 (D2015.1.35.247 vs HIARCS 14 WCSC): 0-1 {Black wins by adjudication}
Thanks. I actually managed to reproduce a similar problem but without warning messages: when I used really fast games, at some point the PGN output would just stop. This on Windows 10 with an SSD HD. I just pushed a commit that fixes this problem and makes PGN output more efficient: https://github.com/cutechess/cutechess/ ... a87ed18d1a

Could you try fetching the latest code (which includes the above commit), compile and see if you can still reproduce the "Can't write to PGN file" error? You'll have to recompile the whole project (lib + cli).
This one works, I can't find the "Can't write..." message from the batch file that I used with tc 1s+100ms inc. Number of games from results summary from cutechess, now matches with the output pgn file.
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: cutechess-cli 0.7.0

Post by Ferdy »

ilari wrote:
melajara wrote:
Ferdy wrote:
melajara wrote:Ferdinand, could you make available your Windows compile with the GUI somewhere for downloading it?

The 32bits official compile doesn't include the GUI and AFAIK there is not much choice for a lightweight chess engine GUI manager, I'm currrently using Tarrasch but it's buggy.
I am not familiar on this like what dll files will be included when run on other computer.
We need info from Ilari. Or we will just do trial and error method.
I will prepare to upload the file, perhaps tomorrow.
Thank you very much.
Most probably, the Qt dlls included in the 32bit official release, or their 64bit equivalent will do fine. As for the Windows specific dlls, I will grab them myself if missing, don't worry about that.
The GUI actually requires a few more Qt dlls than CLI - at least QtSvg and QtWidget.
1. QtSvg
QtSvg4.dll, I find it in ChessHero and LucasChess install dir, not sure if this is what you mean.

2. QtWidget
QtWidget.dll, I cannot find it on my computer.

The cutechess.exe gui will run in any dir in my computer that I have tried, so I will just upload this.
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: cutechess-cli 0.7.0

Post by Ferdy »

melajara wrote:
Ferdy wrote:
melajara wrote:Ferdinand, could you make available your Windows compile with the GUI somewhere for downloading it?

The 32bits official compile doesn't include the GUI and AFAIK there is not much choice for a lightweight chess engine GUI manager, I'm currrently using Tarrasch but it's buggy.
I am not familiar on this like what dll files will be included when run on other computer.
We need info from Ilari. Or we will just do trial and error method.
I will prepare to upload the file, perhaps tomorrow.
Thank you very much.
Most probably, the Qt dlls included in the 32bit official release, or their 64bit equivalent will do fine. As for the Windows specific dlls, I will grab them myself if missing, don't worry about that.
Here it is, just a single exe file.
Download:
http://www.mediafire.com/download/atet9 ... ss_gui.rar
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: cutechess-cli 0.7.0

Post by Ferdy »

ilari wrote:Could you try fetching the latest code (which includes the above commit), compile and see if you can still reproduce the "Can't write to PGN file" error? You'll have to recompile the whole project (lib + cli).
Done some further test with this new update. Using TC 2s + 100ms inc and intentionally using engines that would forfeit on time at given TC. I got this EngineProcess warning.
[...]
Started game 984 of 1000 (D2015.241 vs Pedone_1.2_win64)
Finished game 981 (Booot 5.2.0 x64 vs D2015.241): 0-1 {White loses on time}
Finished game 983 (Pedone_1.2_win64 vs D2015.241): 1-0 {White wins by adjudicati
on}
Started game 985 of 1000 (Spike 1.4 vs D2015.241)
Finished game 982 (D2015.241 vs Booot 5.2.0 x64): 1-0 {Black loses on time}
Started game 987 of 1000 (Murka_3_64BIT vs D2015.241)
Started game 986 of 1000 (D2015.241 vs Spike 1.4)
Finished game 984 (D2015.241 vs Pedone_1.2_win64): 1-0 {Black loses on time}
Started game 988 of 1000 (D2015.241 vs Murka_3_64BIT)
Finished game 985 (Spike 1.4 vs D2015.241): 1-0 {White wins by adjudication}
Started game 989 of 1000 (Atlas 3.80 x64 vs D2015.241)
Finished game 986 (D2015.241 vs Spike 1.4): 1-0 {White wins by adjudication}
Started game 990 of 1000 (D2015.241 vs Atlas 3.80 x64)
Finished game 987 (Murka_3_64BIT vs D2015.241): 1-0 {White wins by adjudication}

Started game 991 of 1000 (MinkoChess_1.3_x64 vs D2015.241)
Finished game 991 (MinkoChess_1.3_x64 vs D2015.241): 0-1 {Black wins by adjudica
tion}
Started game 992 of 1000 (D2015.241 vs MinkoChess_1.3_x64)
Finished game 988 (D2015.241 vs Murka_3_64BIT): 0-1 {Black wins by adjudication}

Started game 993 of 1000 (Nemo_SP64o_v1.0.1_Beta vs D2015.241)
Finished game 993 (Nemo_SP64o_v1.0.1_Beta vs D2015.241): 1-0 {White wins by adju
dication}
Started game 994 of 1000 (D2015.241 vs Nemo_SP64o_v1.0.1_Beta)
Finished game 990 (D2015.241 vs Atlas 3.80 x64): 1-0 {White wins by adjudication
}
Started game 995 of 1000 (Doch 1.3.4 x64 vs D2015.241)
Finished game 992 (D2015.241 vs MinkoChess_1.3_x64): 1-0 {White wins by adjudica
tion}
Started game 996 of 1000 (D2015.241 vs Doch 1.3.4 x64)
Finished game 989 (Atlas 3.80 x64 vs D2015.241): 1/2-1/2 {Draw by fifty moves ru
le}
Started game 997 of 1000 (Gull 1.1 vs D2015.241)
Finished game 994 (D2015.241 vs Nemo_SP64o_v1.0.1_Beta): 0-1 {Black wins by adju
dication}
Started game 998 of 1000 (D2015.241 vs Gull 1.1)
Finished game 995 (Doch 1.3.4 x64 vs D2015.241): 1-0 {White wins by adjudication
}
Warning: EngineProcess: Destroyed while process is still running.
[...]
Final table according to cutechess.

Code: Select all

Rank Name                          ELO   Games   Score   Draws
   1 Murka_3_64BIT                 186     100     74%     25%
   2 Gull 1.1                       85     100     62%     26%
   3 Atlas 3.80 x64                 85     100     62%     26%
   4 Nemo_SP64o_v1.0.1_Beta         74     100     60%     19%
   5 Vajolet2 2.0 x64 pop           49     100     57%     28%
   6 D2015.241                      30    1000     54%     20%
   7 Spike 1.4                      24     100     54%     25%
   8 Doch 1.3.4 x64                -28     100     46%     20%
   9 MinkoChess_1.3_x64           -151     100     30%     23%
  10 Pedone_1.2_win64             -363     100     11%     10%
  11 Booot 5.2.0 x64              -727     100      2%      1%
Finished match
Run with my little tool to see time forfeits.

Code: Select all

SortR                            Player   Points   Games  Rate(%)  TFC
    1                     Murka_3_64BIT     74.5     100    74.5     0
    2                    Atlas 3.80 x64     62.0     100    62.0     0
    3                          Gull 1.1     62.0     100    62.0     0
    4            Nemo_SP64o_v1.0.1_Beta     60.5     100    60.5     0
    5              Vajolet2 2.0 x64 pop     57.0     100    57.0     0
    6                         D2015.241    542.5    1000    54.2     0
    7                         Spike 1.4     53.5     100    53.5     0
    8                    Doch 1.3.4 x64     46.0     100    46.0    13
    9                MinkoChess_1.3_x64     29.5     100    29.5     0
   10                  Pedone_1.2_win64     11.0     100    11.0    83
   11                   Booot 5.2.0 x64      1.5     100     1.5    98

TFC = time forfeit count
I don't know about that warning, but games are all there, probably this is just fine.

It would be good if you are able to display the id name of that engine that causes such warning, as a developer choosing good sparring partners is becoming more critical now :).
User avatar
ilari
Posts: 750
Joined: Mon Mar 27, 2006 7:45 pm
Location: Finland

Re: cutechess-cli 0.7.0

Post by ilari »

Ferdy wrote:Done some further test with this new update. Using TC 2s + 100ms inc and intentionally using engines that would forfeit on time at given TC. I got this EngineProcess warning.

...

I don't know about that warning, but games are all there, probably this is just fine.

It would be good if you are able to display the id name of that engine that causes such warning, as a developer choosing good sparring partners is becoming more critical now :).
Thanks a lot for the help! Yes, the "EngineProcess: Destroyed while process is still running." warning is not fatal. Usually it happens when the stdout pipe from the engine to CuteChess closes but the engine process does not terminate (stalls, hangs etc.). Then cutechess has to terminate the process violently.

You're right, we could add information about which engine it happened to.
voyagerOne
Posts: 154
Joined: Tue May 17, 2011 8:12 pm

Re: cutechess-cli 0.7.0

Post by voyagerOne »

Not related to the GUI...but I got a quick question regarding random opening.

If we have concurrency > 1, do the processes share the same seed?


Thanks in advance.