Polyglot 1.4w5

Discussions about Winboard/Xboard. News about engines or programs to use with these GUIs (e.g. tournament managers or adapters) belong in this sub forum.

Moderator: Andres Valverde

Re: Polyglot 1.4w5

Postby H.G.Muller » 15 Jan 2009, 09:03

'Optimized' is a relative notion. Many parameters are of "the bigger, the better" type (Hash and EGTB Cache), but your machine has only limited resources, so they have to be divided fairly (i.e. equally) over all engines. This is what the global.ini is useful for: if you run two tourneys in parallel, you can reduce the hash size by 2 for all engines at once, to make them still fit. If you play only a single human-engine game at the time, you can double it. Other parameters or of the "right-wrong" type, e.g. the tablebase path. If you reorganize your file system and put the tablebases in another folder, all engines will have to know this new location, or they will not be able to find them.
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: Polyglot 1.4w5

Postby ChessKnight » 15 Jan 2009, 09:13

H.G.Muller:

Thanx!

I see. i just play only a single human-engine game at the time.

regards,
ChessKnight
 
Posts: 48
Joined: 26 Dec 2008, 06:37

Re: Polyglot 1.4w5

Postby Michel » 15 Jan 2009, 21:30

Other parameters or of the "right-wrong" type, e.g. the tablebase path. If you reorganize your file system and put the tablebases in another folder, all engines will have to know this new location, or they will not be able to find them


It seems to me this information can be just as easily specified in the GUI/TM. This seem
to be the natural place for it.
Michel
 
Posts: 513
Joined: 01 Oct 2008, 12:15

Re: Polyglot 1.4w5

Postby H.G.Muller » 15 Jan 2009, 23:50

I agree. We seem to have a fork in philosophy here.
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: Polyglot 1.4w15

Postby F. Bluemers » 24 Jan 2009, 18:38

New polyglot version.
polyglot does not use I/O polling anymore.
Timelosses/Lag with very small timecontrols has been substantial reduced

To give an idea:
using older polyglot versions running hiarcs 11.1 versus itself
100 games/90 moves in 4 seconds,
I got about 28 games with a time loss.
This has been reduced to zero now!
Best
Fonzy
F. Bluemers
 
Posts: 175
Joined: 04 Sep 2008, 16:56
Location: Netherlands

Re: Polyglot 1.4w5

Postby nepossiver » 25 Jan 2009, 00:29

Does this mean that the ELO cost for using an adapter has also been reduced? (Assuming that using an engine through an adapter decreases 20-30 ELO, as I saw somewhere in some forum, are true)
nepossiver
 
Posts: 31
Joined: 21 Sep 2008, 17:00

Re: Polyglot 1.4w5

Postby Teemu Pudas » 25 Jan 2009, 00:59

nepossiver wrote:Does this mean that the ELO cost for using an adapter has also been reduced?

Only in very fast games. It's always been zero at normal time controls.
(Assuming that using an engine through an adapter decreases 20-30 ELO, as I saw somewhere in some forum, are true)

They were probably talking about the old ChessBase adapter for Winboard engines. It's the only adapter that deliberately cripples the engine...
Teemu Pudas
 
Posts: 124
Joined: 16 Apr 2007, 14:03

Re: Polyglot 1.4w5

Postby nepossiver » 28 Jan 2009, 06:55

Michel van den Bergh polyglot.exe (Ucib13) hangs with info-book and dump-book, hogging 50% cpu usage of my dual core laptop. polyglot_dev.exe (Ucib18) doesn't. OS winXP professional. Has this been noticed previously?

On another topic, are the forks of polyglot converging (Michel and Fonzys')? They seem to be slightly better than the other for some stuff, but not others... it would be fantastic if they merged in full.
nepossiver
 
Posts: 31
Joined: 21 Sep 2008, 17:00

Re: Polyglot 1.4w5

Postby Michel » 28 Jan 2009, 15:23

nepossiver wrote:Michel van den Bergh polyglot.exe (Ucib13) hangs with info-book and dump-book, hogging 50% cpu usage of my dual core laptop. polyglot_dev.exe (Ucib18) doesn't. OS winXP professional. Has this been noticed previously?

b13 did not support info-book and dump-book. Those were introduced in b18. But the older Windows
versions sometimes hung when you gave bad parameters. This is probably what you are observing. I think
I have eliminated most of those scenarios. Otherwise it is a bug.
On another topic, are the forks of polyglot converging (Michel and Fonzys')? They seem to be slightly better than the other for some stuff, but not others... it would be fantastic if they merged in full.


Well both versions more or less have the same functionality still. The sources have diverged since I have been working
on abstracting the differences between Windows and Linux.

I just posted b20 which also talks to the GUI without polling (like Fonzy's latest version).

I still use engine polling though. The problem is that I don't know how to do line input from a pipe on Windows (fgets
does not work since that needs a file pointer and not a file handle). If the engine runs at low priority
then ReadFile from a pipe reads in quantities of single(!) bytes which absolutely kills performance.

Any Win32 experts that know how to deal with this?
Michel
 
Posts: 513
Joined: 01 Oct 2008, 12:15

Re: Polyglot 1.4w5

Postby Michel » 29 Jan 2009, 21:38

I still use engine polling though. The problem is that I don't know how to do line input from a pipe on Windows (fgets
does not work since that needs a file pointer and not a file handle). If the engine runs at low priority
then ReadFile from a pipe reads in quantities of single(!) bytes which absolutely kills performance.

Any Win32 experts that know how to deal with this?


I figured out how to do this. There is a function _open_osfhandle() that translates a file handle into a file descriptor. Then
you can use the standard stdio functions on it.
Michel
 
Posts: 513
Joined: 01 Oct 2008, 12:15

Re: Polyglot 1.4w16

Postby F. Bluemers » 30 Jan 2009, 19:21

Fixed a couple of nasty race conditions in pg1.4w15.
They only shoed up while I did some tests on a single core computer.
F. Bluemers
 
Posts: 175
Joined: 04 Sep 2008, 16:56
Location: Netherlands

Re: Polyglot 1.4w5

Postby F. Bluemers » 30 Jan 2009, 19:27

Michel wrote:
nepossiver wrote:Michel van den Bergh polyglot.exe (Ucib13) hangs with info-book and dump-book, hogging 50% cpu usage of my dual core laptop. polyglot_dev.exe (Ucib18) doesn't. OS winXP professional. Has this been noticed previously?

b13 did not support info-book and dump-book. Those were introduced in b18. But the older Windows
versions sometimes hung when you gave bad parameters. This is probably what you are observing. I think
I have eliminated most of those scenarios. Otherwise it is a bug.
On another topic, are the forks of polyglot converging (Michel and Fonzys')? They seem to be slightly better than the other for some stuff, but not others... it would be fantastic if they merged in full.


Well both versions more or less have the same functionality still. The sources have diverged since I have been working
on abstracting the differences between Windows and Linux.

I just posted b20 which also talks to the GUI without polling (like Fonzy's latest version).

I still use engine polling though. The problem is that I don't know how to do line input from a pipe on Windows (fgets
does not work since that needs a file pointer and not a file handle). If the engine runs at low priority
then ReadFile from a pipe reads in quantities of single(!) bytes which absolutely kills performance.

Any Win32 experts that know how to deal with this?

Hi Michel,

I did some test (with pg 1.4w16) with Rybka 2n2 "lower than normal" prio against Rybka 2n2 on "normal" prio
I don't see much "stalling" if I compare the timestamps in both log files
lower prio:
Code: Select all
13845.890 Xboard->Adapter: usermove g1f3
13845.890 POLYGLOT MOVE Nf3
13845.890 POLYGLOT WAIT -> THINK
13845.890 POLYGLOT START SEARCH
13845.890 POLYGLOT FEN rnbq1k1r/pppn1pp1/4p2p/3pP3/3P2Q1/2P2N2/P1PB1PPP/R3KB1R b KQ - 2 9
13845.890 Adapter->Engine: position startpos moves e2e4 e7e6 d2d4 d7d5 b1c3 g8f6 c1g5 f8b4 e4e5 h7h6 g5d2 f6d7 d1g4 b4c3 b2c3 e8f8 g1f3
13845.890 Adapter->Engine: go wtime 7950 btime 7870 movestogo 82
13845.890 Engine->Adapter: info depth 2
13845.890 Engine->Adapter: info depth 2 score cp -61 hashfull 0 time 1 nodes 149 nps 152576 pv b8c6
13845.890 Adapter->Xboard: 2 -61 0 149 Nc6
13845.890 Engine->Adapter: info depth 2 time 1 nodes 149 nps 152576
13845.890 Engine->Adapter: info depth 3
13845.890 Engine->Adapter: info depth 3 score cp -61 hashfull 0 time 1 nodes 189 nps 193536 pv b8c6
13845.890 Adapter->Xboard: 3 -61 0 189 Nc6
13845.890 Engine->Adapter: info depth 3 time 1 nodes 189 nps 193536
13845.906 Engine->Adapter: info depth 4
13845.921 Engine->Adapter: info depth 4 score cp -70 hashfull 0 time 17 nodes 605 nps 36442 pv b8c6
13845.921 Adapter->Xboard: 4 -70 2 605 Nc6
13845.937 Engine->Adapter: info depth 4 score cp -64 hashfull 0 time 48 nodes 3778 nps 80597 pv f7f5
13845.937 Adapter->Xboard: 4 -64 5 3778 f5
13845.937 Engine->Adapter: info depth 4 time 48 nodes 3886 nps 82901
13845.937 Engine->Adapter: info time 48 nodes 3886 nps 3886
13845.937 Engine->Adapter: bestmove f7f5 ponder e5f6
13845.937 Adapter->Xboard: 4 -64 5 3886 f5
13845.937 POLYGLOT MOVE f5
13845.937 POLYGLOT THINK -> WAIT
13845.937 Adapter->Xboard: move f7f5
13845.953 Xboard->Adapter: time 782
13845.953 Xboard->Adapter: otim 793
13845.953 Xboard->Adapter: usermove g4h3
13845.953 POLYGLOT MOVE Qh3
13845.953 POLYGLOT WAIT -> THINK
13845.953 POLYGLOT START SEARCH
13845.953 POLYGLOT FEN rnbq1k1r/pppn2p1/4p2p/3pPp2/3P4/2P2N1Q/P1PB1PPP/R3KB1R b KQ - 1 10
13845.953 Adapter->Engine: position startpos moves e2e4 e7e6 d2d4 d7d5 b1c3 g8f6 c1g5 f8b4 e4e5 h7h6 g5d2 f6d7 d1g4 b4c3 b2c3 e8f8 g1f3 f7f5 g4h3
13845.953 Adapter->Engine: go wtime 7930 btime 7820 movestogo 81
13845.953 Engine->Adapter: info depth 2
13845.953 Engine->Adapter: info depth 2 score cp -60 hashfull 0 time 1 nodes 358 nps 366592 pv b8c6
13845.953 Adapter->Xboard: 2 -60 0 358 Nc6
13845.953 Engine->Adapter: info depth 2 time 1 nodes 385 nps 394240
13845.968 Engine->Adapter: info depth 3
13845.968 Engine->Adapter: info depth 3 score cp -75 hashfull 0 time 16 nodes 781 nps 49984 pv b8c6
13845.968 Adapter->Xboard: 3 -75 2 781 Nc6
13845.968 Engine->Adapter: info depth 3 time 16 nodes 912 nps 58368
13845.968 Engine->Adapter: info time 16 nodes 912 nps 912
13845.968 Engine->Adapter: bestmove b8c6 ponder f1d3
13845.968 Adapter->Xboard: 3 -75 2 912 Nc6
13845.968 POLYGLOT MOVE Nc6
13845.968 POLYGLOT THINK -> WAIT
13845.968 Adapter->Xboard: move b8c6
13845.984 Xboard->Adapter: time 781
13845.984 Xboard->Adapter: otim 792
13845.984 Xboard->Adapter: usermove f1d3
13845.984 POLYGLOT MOVE Bd3
13845.984 POLYGLOT WAIT -> THINK
13845.984 POLYGLOT START SEARCH
13845.984 POLYGLOT FEN r1bq1k1r/pppn2p1/2n1p2p/3pPp2/3P4/2PB1N1Q/P1PB1PPP/R3K2R b KQ - 3 11
13845.984 Adapter->Engine: position startpos moves e2e4 e7e6 d2d4 d7d5 b1c3 g8f6 c1g5 f8b4 e4e5 h7h6 g5d2 f6d7 d1g4 b4c3 b2c3 e8f8 g1f3 f7f5 g4h3 b8c6 f1d3
13845.984 Adapter->Engine: go wtime 7920 btime 7810 movestogo 80
13845.984 Engine->Adapter: info depth 2
13845.984 Engine->Adapter: info depth 2 score cp -81 hashfull 0 time 1 nodes 281 nps 287744 pv f8f7
13845.984 Adapter->Xboard: 2 -81 0 281 Kf7
13845.984 Engine->Adapter: info depth 2 time 1 nodes 322 nps 329728
13846.000 Engine->Adapter: info depth 3
13846.000 Engine->Adapter: info depth 3 score cp -75 hashfull 0 time 17 nodes 712 nps 42887 pv f8f7
13846.000 Adapter->Xboard: 3 -75 2 712 Kf7
13846.000 Engine->Adapter: info depth 3 time 17 nodes 762 nps 45899
13846.000 Engine->Adapter: info time 17 nodes 762 nps 762
13846.000 Engine->Adapter: bestmove f8f7 ponder e1g1
13846.000 Adapter->Xboard: 3 -75 2 762 Kf7
13846.000 POLYGLOT MOVE Kf7
13846.000 POLYGLOT THINK -> WAIT
13846.000 Adapter->Xboard: move f8f7
13846.031 Xboard->Adapter: time 779
13846.031 Xboard->Adapter: otim 789
13846.031 Xboard->Adapter: usermove h3h5
13846.031 POLYGLOT MOVE Qh5+
13846.031 POLYGLOT WAIT -> THINK
13846.031 POLYGLOT START SEARCH

normal:
Code: Select all
13845.890 POLYGLOT MOVE Nf3
13845.890 POLYGLOT THINK -> WAIT
13845.890 Adapter->Xboard: move g1f3
13845.937 Xboard->Adapter: time 795
13845.937 Xboard->Adapter: otim 782
13845.937 Xboard->Adapter: usermove f7f5
13845.937 POLYGLOT MOVE f5
13845.937 POLYGLOT WAIT -> THINK
13845.937 POLYGLOT START SEARCH
13845.937 POLYGLOT FEN rnbq1k1r/pppn2p1/4p2p/3pPp2/3P2Q1/2P2N2/P1PB1PPP/R3KB1R w KQ f6 0 10
13845.937 Adapter->Engine: position startpos moves e2e4 e7e6 d2d4 d7d5 b1c3 g8f6 c1g5 f8b4 e4e5 h7h6 g5d2 f6d7 d1g4 b4c3 b2c3 e8f8 g1f3 f7f5
13845.937 Adapter->Engine: go wtime 7950 btime 7820 movestogo 81
13845.953 Engine->Adapter: info depth 2
13845.953 Engine->Adapter: info depth 2 score cp 60 hashfull 0 time 17 nodes 876 nps 52766 pv g4g6
13845.953 Adapter->Xboard: 2 +60 2 876 Qg6
13845.953 Engine->Adapter: info depth 2 score cp 60 hashfull 0 time 17 nodes 1059 nps 63789 pv g4h3
13845.953 Adapter->Xboard: 2 +60 2 1059 Qh3
13845.953 Engine->Adapter: info depth 2 time 17 nodes 1113 nps 67041
13845.953 Engine->Adapter: info time 17 nodes 1113 nps 1113
13845.953 Engine->Adapter: bestmove g4h3 ponder b8c6
13845.953 Adapter->Xboard: 2 +60 2 1113 Qh3
13845.953 POLYGLOT MOVE Qh3
13845.953 POLYGLOT THINK -> WAIT
13845.953 Adapter->Xboard: move g4h3
13845.968 Xboard->Adapter: time 793
13845.968 Xboard->Adapter: otim 781
13845.968 Xboard->Adapter: usermove b8c6
13845.968 POLYGLOT MOVE Nc6
13845.968 POLYGLOT WAIT -> THINK
13845.968 POLYGLOT START SEARCH
13845.968 POLYGLOT FEN r1bq1k1r/pppn2p1/2n1p2p/3pPp2/3P4/2P2N1Q/P1PB1PPP/R3KB1R w KQ - 2 11
13845.968 Adapter->Engine: position startpos moves e2e4 e7e6 d2d4 d7d5 b1c3 g8f6 c1g5 f8b4 e4e5 h7h6 g5d2 f6d7 d1g4 b4c3 b2c3 e8f8 g1f3 f7f5 g4h3 b8c6
13845.968 Adapter->Engine: go wtime 7930 btime 7810 movestogo 80
13845.984 Engine->Adapter: info depth 2
13845.984 Engine->Adapter: info depth 2 score cp 45 hashfull 0 time 1 nodes 480 nps 491520 pv d2g5
13845.984 Adapter->Xboard: 2 +45 0 480 Bg5
13845.984 Engine->Adapter: info depth 2 score cp 75 hashfull 0 time 17 nodes 661 nps 39815 pv f1d3
13845.984 Adapter->Xboard: 2 +75 2 661 Bd3
13845.984 Engine->Adapter: info depth 2 time 17 nodes 701 nps 42224
13845.984 Engine->Adapter: info time 17 nodes 701 nps 701
13845.984 Engine->Adapter: bestmove f1d3 ponder f8f7
13845.984 Adapter->Xboard: 2 +75 2 701 Bd3
13845.984 POLYGLOT MOVE Bd3
13845.984 POLYGLOT THINK -> WAIT
13845.984 Adapter->Xboard: move f1d3
13846.000 Xboard->Adapter: time 792
13846.000 Xboard->Adapter: otim 779
13846.000 Xboard->Adapter: usermove f8f7
13846.000 POLYGLOT MOVE Kf7
13846.000 POLYGLOT WAIT -> THINK
13846.000 POLYGLOT START SEARCH
13846.000 POLYGLOT FEN r1bq3r/pppn1kp1/2n1p2p/3pPp2/3P4/2PB1N1Q/P1PB1PPP/R3K2R w KQ - 4 12
13846.000 Adapter->Engine: position startpos moves e2e4 e7e6 d2d4 d7d5 b1c3 g8f6 c1g5 f8b4 e4e5 h7h6 g5d2 f6d7 d1g4 b4c3 b2c3 e8f8 g1f3 f7f5 g4h3 b8c6 f1d3 f8f7
13846.000 Adapter->Engine: go wtime 7920 btime 7790 movestogo 79
13846.015 Engine->Adapter: info depth 2
13846.015 Engine->Adapter: info depth 2 score cp 75 hashfull 0 time 1 nodes 436 nps 446464 pv e1g1
13846.015 Adapter->Xboard: 2 +75 0 436 O-O
13846.015 Engine->Adapter: info depth 2 time 1 nodes 614 nps 628736
13846.015 Engine->Adapter: info depth 3
F. Bluemers
 
Posts: 175
Joined: 04 Sep 2008, 16:56
Location: Netherlands

Previous

Return to Winboard and related Topics

Who is online

Users browsing this forum: No registered users and 26 guests