Page 1 of 2

Any help about engines which dont terminate under Winboard

PostPosted: 26 Dec 2009, 22:15
by Sedat Canbaz
Hello Friends !

Yesterday and even today when i was running engine matches under Winboard ver.4.20091217 with PSWBTM v.2.0,i have noticed with the task manager program that there were some engines which dont terminate (e.g:i saw 2 double exe names of same kind of engines-E.T.Chess 13.01.2008, AlaricWB707,TogaII...),i mean there were two same et_chess.exe versions,where they were still pondering.Normally about one etchess exe yes,
but the strange thing is that the second one was still pondering(not terminating)

Normally i followed Pradu's recommendations and i have created a pv.bat:

And here is my pv.bat:

pv –kf misbehavingengine1.exe
pv –kf misbehavingengine2.exe
pv –kf misbehavingengine3.exe

I think there is something wrong,becouse even with above pv.bat's command did not help... i think is needed to change the name,e.g: instead of ''misbehavingengine1.exe'' should be change the engine name which does not terminate(misbehaving),for example:

pv –kf et_chess.exe

And i think the PV program should be open/active when the engine matches are running ?!

For example from here you can download my pv setup:
http://www.sedatchess.com/files/utils.rar

Btw,i just wonder about these engines(which have terminating problems) under rest Chess GUIs, are they have same problems ?

I will be very glad if anybody will inform/help me step by step...

Thanks in adavance and happy new year,
Sedat Canbaz

Re: Any help about engines which dont terminate under Winboard

PostPosted: 26 Dec 2009, 23:39
by H.G.Muller
Indeed you have to put the actual name of engines in the kill list. The way I do it is put pv.exe in the same folder as PSWBTM.exe, and put the pv -kf commands in the file aftergame.txt in that folder.

Note that not terminating after a normal quit command should be considered a very serious engine bug. Most engines do not have this bug, and only engines known to have problems in this respect need to be on the kill list. WinBoard does kill engine processes that do refuse to terminate, but unfortunately, for reasons we do not understand, killing processes on Windows seems a very unreliable process.

I don't know if and how other GUIs deal with this problem. pv.exe seems to be more powerful / successful in killing processes as the normal system calls recommended for doing this. Perhaps I should make WinBoard dependent on pv.exe, by not having it kill the engine itself, but in stead automatically create a process to invoke pv.exe, and have that kill the engine. One problem is that pv.exe killes the process by name of the executable. So if you would have two engines running that have the same name (e.g. because the same engine participates in two tourneys simutaneously), it might kill the engine of the other tourney.

Re: Any help about engines which dont terminate under Winboard

PostPosted: 27 Dec 2009, 01:18
by Roger Brown
H.G.Muller wrote:SNIP

I don't know if and how other GUIs deal with this problem. pv.exe seems to be more powerful / successful in killing processes as the normal system calls recommended for doing this. Perhaps I should make WinBoard dependent on pv.exe, by not having it kill the engine itself, but in stead automatically create a process to invoke pv.exe, and have that kill the engine. One problem is that pv.exe killes the process by name of the executable. So if you would have two engines running that have the same name (e.g. because the same engine participates in two tourneys simutaneously), it might kill the engine of the other tourney.



Hello H.G. Muller,

I also use pv.exe in this fashion but wouldn't the distribution of this software with the Winboard package be dependent on the copyright etc apllicable?

I assumed that you would want to distribute it as part of the Winboard installation package to simplify matters for the user but perhaps I made a faulty assumption...

Later.

Re: Any help about engines which dont terminate under Winboard

PostPosted: 27 Dec 2009, 09:51
by Sedat Canbaz
Ok...i have already updated my pv.bat:

pv –kf Colossus2008b.exe
pv –kf et_chess.exe
pv –kf AlaricWB707.exe
pv –kf TogaII20SE.exe

So,e.g:in the aftergame.txt should be with the same commands as in the pv.bat:

pv –kf Colossus2008b.exe
pv –kf et_chess.exe
pv –kf AlaricWB707.exe
pv –kf TogaII20SE.exe


In other words,its needed pv.exe +pv.bat+aftergame.txt in the same folder of PSWBTM ?!

One thing more,why almost each time some wb engines during thinking (such as E.T.Chess 13.01.2008) just after when i am closing the Winboard GUI,etchess.exe gives error message ?

Note:i have tried the same test with E.T.Chess 13.01.2008 under Arena 2.01 and did not noticed any etchess.exe's error message




Best,
Sedat

Re: Any help about engines which dont terminate under Winboard

PostPosted: 27 Dec 2009, 21:43
by H.G.Muller
Sedat Canbaz wrote:One thing more,why almost each time some wb engines during thinking (such as E.T.Chess 13.01.2008) just after when i am closing the Winboard GUI,etchess.exe gives error message ?

What error message does it give?

Re: Any help about engines which dont terminate under Winboard

PostPosted: 28 Dec 2009, 06:59
by Sedat Canbaz
1)Etchess's error appears almost each time after closing Winboard GUI:
Image

2)Etchess gives rarely error during playing engine-matchess:
(note:sometime Wildcat has the same error messages during playing)
Image


<?xml version="1.0" encoding="UTF-16"?>
<DATABASE>
<EXE NAME="et_chess2.exe" FILTER="GRABMI_FILTER_PRIVACY">
<MATCHING_FILE NAME="et_chess2.exe" SIZE="426496" CHECKSUM="0xA744A146" MODULE_TYPE="WIN32" PE_CHECKSUM="0x0" LINKER_VERSION="0x0" LINK_DATE="01/13/2008 23:54:52" UPTO_LINK_DATE="01/13/2008 23:54:52" />
</EXE>
<EXE NAME="kernel32.dll" FILTER="GRABMI_FILTER_THISFILEONLY">
<MATCHING_FILE NAME="kernel32.dll" SIZE="1009152" CHECKSUM="0x6444867F" BIN_FILE_VERSION="5.2.3790.3959" BIN_PRODUCT_VERSION="5.2.3790.3959" PRODUCT_VERSION="5.2.3790.3959" FILE_DESCRIPTION="Windows NT BASE API Client DLL" COMPANY_NAME="Microsoft Corporation" PRODUCT_NAME="Microsoft® Windows® Operating System" FILE_VERSION="5.2.3790.3959 (srv03_sp2_rtm.070216-1710)" ORIGINAL_FILENAME="kernel32" INTERNAL_NAME="kernel32" LEGAL_COPYRIGHT="© Microsoft Corporation. All rights reserved." VERFILEDATEHI="0x0" VERFILEDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x100243" LINKER_VERSION="0x50002" UPTO_BIN_FILE_VERSION="5.2.3790.3959" UPTO_BIN_PRODUCT_VERSION="5.2.3790.3959" LINK_DATE="02/17/2007 13:58:24" UPTO_LINK_DATE="02/17/2007 13:58:24" VER_LANGUAGE="English (United States) [0x409]" />
</EXE>
</DATABASE>


Regards,
Sedat

Re: Any help about engines which dont terminate under Winboard

PostPosted: 28 Dec 2009, 08:00
by Sedat Canbaz
Btw,normally Colossus 2008b has no problems during playing engine-matchess,but there is one serious problem:
the Colossus 2008b engine does not terminate,i mean the engine.exe is still takes memory ,it happens when is running engine-match and just after when the Winboard GUI is closing
Note:there are many UCI engines,which have same problems and the pv's/aftergame.txt's commands dont help here:

pv –kf Colossus2008b.exe
pv –kf Colossus2.exe
pv –kf et_chess.exe
pv –kf et_chess2.exe
pv –kf AlaricWB707.exe
pv –kf AlaricWB707i.exe
pv –kf TogaII20SE.exe


------------------------------------------------------------------------

And here is my Polyglot.ini of Colossus 2008b:


[Polyglot]

EngineName = Colossus 2008b
EngineDir = .
EngineCommand = Colossus2.exe

Book = true
BookFile = C:\chess\engginnes\1_details\bookss\GS_medium091101.bin

Resign = true
ResignMove = 3
ResignScore = 600


[Engine]

ownbook=false
Hash = 128
NalimovPath = c:\chess\tb
NalimovCache = 16


Image



Best,
Sedat

Re: Any help about engines which dont terminate under Winboard

PostPosted: 28 Dec 2009, 09:54
by H.G.Muller
Hmm, it might be simply that E.T.Chess does not like being killed, and that WinBoard attempts to kill it a bit too soon, not giving it the chance to exit cleanly in reaction to the 'quit' command. (E.g. because it first wants to write log file, which takes time.)

WinBoard has a parameter /delayAfterQuit, which I set to 0 in the installer distribution, and this might not have been the greatest idea. Perhaps you should try /delayAfterQuit=1 (it should be given in seconds, and 1 sec seems enough for an engine to clean up its act and terminate). You can do this either by editing the winboard.ini file, or starting up WinBoard and tick "additional options" in the startup dialog and write /delayAfterQuit=1 there. It should then save this in the winboard.ini when you exit (and saveSettingsOnExit is on), but be in effect immediately.

Please try this, and tell me if / which problems persist.

Re: Any help about engines which dont terminate under Winboard

PostPosted: 28 Dec 2009, 12:53
by Guenther Simon
Sedat Canbaz wrote:Hello Friends !

Yesterday and even today when i was running engine matches under Winboard ver.4.20091217 with PSWBTM v.2.0,i have noticed with the task manager program that there were some engines which dont terminate (e.g:i saw 2 double exe names of same kind of engines-E.T.Chess 13.01.2008, AlaricWB707,TogaII...),i mean there were two same et_chess.exe versions,where they were still pondering.Normally about one etchess exe yes,
but the strange thing is that the second one was still pondering(not terminating)

Normally i followed Pradu's recommendations and i have created a pv.bat:

And here is my pv.bat:

pv –kf misbehavingengine1.exe
pv –kf misbehavingengine2.exe
pv –kf misbehavingengine3.exe

I think there is something wrong,becouse even with above pv.bat's command did not help... i think is needed to change the name,e.g: instead of ''misbehavingengine1.exe'' should be change the engine name which does not terminate(misbehaving),for example:

pv –kf et_chess.exe

And i think the PV program should be open/active when the engine matches are running ?!

For example from here you can download my pv setup:
http://www.sedatchess.com/files/utils.rar

Btw,i just wonder about these engines(which have terminating problems) under rest Chess GUIs, are they have same problems ?

I will be very glad if anybody will inform/help me step by step...

Thanks in adavance and happy new year,
Sedat Canbaz



First of all, you don't need to have PRCView.exe running, because it is a different program
(a later screenshot shows you had running it...).
You only need PV.exe which is just a commandline tool which comes with the PRCView distribution
in the folder of PSWBTM or in the folder where the bat files for killing are executed.
Still you must be doing something more wrong because neither I have those error messages which
indicate engine crashes nor do I need kill commands for all the programs you mentioned
so far. You should be aware also that it might be like HG already said that you by accident
kill engines(if not renamed etc...) which are running more than once, if you set up more
than one tournament simultaneously with them.

Guenther

Re: Any help about engines which dont terminate under Winboard

PostPosted: 28 Dec 2009, 13:12
by Guenther Simon
H.G.Muller wrote:Hmm, it might be simply that E.T.Chess does not like being killed, and that WinBoard attempts to kill it a bit too soon, not giving it the chance to exit cleanly in reaction to the 'quit' command. (E.g. because it first wants to write log file, which takes time.)

WinBoard has a parameter /delayAfterQuit, which I set to 0 in the installer distribution, and this might not have been the greatest idea. Perhaps you should try /delayAfterQuit=1 (it should be given in seconds, and 1 sec seems enough for an engine to clean up its act and terminate). You can do this either by editing the winboard.ini file, or starting up WinBoard and tick "additional options" in the startup dialog and write /delayAfterQuit=1 there. It should then save this in the winboard.ini when you exit (and saveSettingsOnExit is on), but be in effect immediately.

Please try this, and tell me if / which problems persist.


I thought the parameter takes millisec? I have everywhere the value '500' and it always worked.

Guenther

Re: Any help about engines which dont terminate under Winboard

PostPosted: 28 Dec 2009, 14:29
by H.G.Muller
Hmm, I would have to check that. These delays were inherited from Winboard_x. The value seems to be used as an argument to sleep(), which I am pretty sure in Linux indicates second. But in Windows it is fed to Sleep(), and it might very well be that this interprets its argument as milliseconds. This would be an undesirable difference between WinBoard and XBoard.

Re: Any help about engines which dont terminate under Winboard

PostPosted: 28 Dec 2009, 19:20
by Sedat Canbaz
Guenther Simon wrote:First of all, you don't need to have PRCView.exe running, because it is a different program
(a later screenshot shows you had running it...).
You only need PV.exe which is just a commandline tool which comes with the PRCView distribution
in the folder of PSWBTM or in the folder where the bat files for killing are executed.
Still you must be doing something more wrong because neither I have those error messages which
indicate engine crashes nor do I need kill commands for all the programs you mentioned
so far. You should be aware also that it might be like HG already said that you by accident
kill engines(if not renamed etc...) which are running more than once, if you set up more
than one tournament simultaneously with them.

Guenther


1)So i followed your instructions... and i have already deleted the rest PRCView's files:
Image

2) Here is the WinboardGUI-running engine matches:
Image

Please download and check my pv setup files,i hope everything is correct this time:
http://www.sedatchess.com/files/pv_files.rar


Thanks,
Sedat

Re: Any help about engines which dont terminate under Winboard

PostPosted: 28 Dec 2009, 20:34
by Guenther Simon
This looks ok, but it would still kill all double participants even if those still play. When you want to run more than one tourney
simultaneously you should also set up more PSWBTM folders too.
You could also make a higher level of abstraction and not call all engines always. Just call those you really need.
E.g. create a Bat folder which contains bat files for all engines which could be called and only name those in the
aftergame txt file. Have you already changed the delay as HG said? I am asking because those engines still shouldn't
need killing at all.

Guenther

Re: Any help about engines which dont terminate under Winboard

PostPosted: 29 Dec 2009, 08:04
by Sedat Canbaz
I am not sure: i am doing something wrong or maybe the programs,but still as before the same problems continue !!!


And even with this command:
Image
Still almost all UCI engines dont terminate,in case of shutting the Winboard GUI:
Image


Sterange indeed,i have repeated the same test(shutting the FRITZ GUI)and noticed NO PROBLEMS under Fritz:
Image

It seems for the moment polyglot adapter dont work well with UCI engines under Winboard

But anyway many thanks to H.G. Muller/Guenther


I wish to all Winboarders Happy New Year,
Sedat Canbaz

Re: Any help about engines which dont terminate under Winboard

PostPosted: 29 Dec 2009, 09:13
by Sedat Canbaz
And its interesting to note,i have repeated the same test with IGWBTM v14:
Image


And there was NO PROBLEMS after shutting the Winboard GUI,thats GREAT NEWS!!!
Image


So,i think PSWBTM v2.0 does not like UCI engines on my machine :)

BTW,does the pv.exe command work with IGWBTM v14 or its just for PSWBTM v2.0 ?

Best,
Sedat

Re: Any help about engines which dont terminate under Winboard

PostPosted: 29 Dec 2009, 09:39
by H.G.Muller
pv.exe is a completely independent utility for killing processes. It works on any Windows system.

I don't know the TM you mention, but if it has the ability to execute commands after finishng a game, it could also execute the pv command.

Re: Any help about engines which dont terminate under Winboard

PostPosted: 29 Dec 2009, 09:54
by Sedat Canbaz
IGWBTM v.15 by Igor Gorelikov:
http://www.digichess.gr/infiniteloop/tools.php


IGWBTM v.15 is a good tournament manager,but what a pitty sometimes (in the 2nd,3th..rounds)IGWBTM gives a such message:
Tournament is interrupt

So after that the tourney is stopping,bad news ?!

Btw,today i have sended a mail to the author of IGWBTM with a request to fix/update and release a new version


Best,
Sedat

Re: Any help about engines which dont terminate under Winboard

PostPosted: 29 Dec 2009, 10:04
by Sedat Canbaz
One thing more,e.g:I can not run Thinker 5.4 under GalisWBTM ?!
Image

Does anybody has the same problem ?


Best,
Sedat

Re: Any help about engines which dont terminate under Winboard

PostPosted: 29 Dec 2009, 10:10
by Sedat Canbaz
And have tried with some settings and even with this configuration did not play:
Image



Best,
Sedat

Re: Any help about engines which dont terminate under Winboard

PostPosted: 29 Dec 2009, 10:32
by Guenther Simon
Sedat Canbaz wrote:I am not sure: i am doing something wrong or maybe the programs,but still as before the same problems continue !!!


...


Try a delay between 500 and 1000, I am quite sure it is ms here.
BTW what Polyglot version do you use? Also it seems you have a mixture
of 64 bit and 32 bit?

Guenther