WCCC June 27th in Leiden

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

Moderators: hgm, Rebel, chrisw

diep
Posts: 1822
Joined: Thu Mar 09, 2006 11:54 pm
Location: The Netherlands

Re: WCCC June 27th in Leiden

Post by diep »

mjlef wrote:Shredder is greatly improved since last year, and is running on a 32 core machine. It is showing a lot of depth and it is clear Stefan has made a lot of progress.

Jonny also is much stronger. For instance, it is currently in second place on the TCEC round 2. Johannes Zwanzger, Jonny's programmer, says its performance in WCCC and speedchess on the cluster depends a lot on how lucky it gets on its pondering choices. Jonny ponders on multiple opponents moves. So you can some games where it is amazing and others where it gets draws against probably weaker opponents. But the core program does look a lot stronger to me.

The Software Championship this weekend has everyone running on identical machines, whihc will take out the hardware components in WCCC. It should be very interesting. I am happy to see all this hard work by all of these authors.
Good to hear your report Mark.

If it's true what you say - then obviously the problem this world champs is the openingsbook of shredder. it works ok against what they practiced against yet the openingschoices made seem not so clever for example against Jonny.

Playing slav with an engine like shredder is suicide of course against faster hardware.
User avatar
Laskos
Posts: 10948
Joined: Wed Jul 26, 2006 10:21 pm
Full name: Kai Laskos

Re: WCCC June 27th in Leiden

Post by Laskos »

diep wrote:
Laskos wrote:
diep wrote: 2400 cores seems really a lot to me there :)

Assuming this is first time Jonny uses that many - any speedup numbers from Jonny?
What speed-up? It gets 1 billion NPS. Don't know effective speed-up. Mark says it ponders many moves simultaneously, but ponder alone cannot mean more than twice the thinking time. Pity this thing is not tested in 100 games against Komodo, to have a better idea what this is.
Good pondering can be very powerful. It reduces the time of your opponent in half not seldom at cricial moments.

So it reduces elo bigtime of your opponent in such case.

with 2400 cores i would say a clever choice from Jonny.
Ponder is at most a factor 2 in thinking time on average (either decrease the opponent's time or increase yours), and at this level would mean some 30-40 ELO points.
Werewolf
Posts: 1795
Joined: Thu Sep 18, 2008 10:24 pm

Re: WCCC June 27th in Leiden

Post by Werewolf »

diep wrote: Assuming this is first time Jonny uses that many - any speedup numbers from Jonny?
Jonny had a similar number of cores in the last WCC IIRC
diep
Posts: 1822
Joined: Thu Mar 09, 2006 11:54 pm
Location: The Netherlands

Re: WCCC June 27th in Leiden

Post by diep »

Laskos wrote:
diep wrote:
Laskos wrote:
diep wrote: 2400 cores seems really a lot to me there :)

Assuming this is first time Jonny uses that many - any speedup numbers from Jonny?
What speed-up? It gets 1 billion NPS. Don't know effective speed-up. Mark says it ponders many moves simultaneously, but ponder alone cannot mean more than twice the thinking time. Pity this thing is not tested in 100 games against Komodo, to have a better idea what this is.
Good pondering can be very powerful. It reduces the time of your opponent in half not seldom at cricial moments.

So it reduces elo bigtime of your opponent in such case.

with 2400 cores i would say a clever choice from Jonny.
Ponder is at most a factor 2 in thinking time on average (either decrease the opponent's time or increase yours), and at this level would mean some 30-40 ELO points.
Reducing the elo of your opponent is way more than factor 2.
Opponent doesn't have 2400 cores.

Talking about elo is not really interesting as you just play 2 games in total.

If you have 2400 cores and you group it in 4 x 600 cores which in turn calculate at different positions, sometimes 3 plies ahead sometimes pondering other moves,
that's IMHO pretty clever.

Factor 2 scaling won't give Jonny +40 elo for sure.

Wish i had done that world champs 2003...
diep
Posts: 1822
Joined: Thu Mar 09, 2006 11:54 pm
Location: The Netherlands

Re: WCCC June 27th in Leiden

Post by diep »

Werewolf wrote:
diep wrote: Assuming this is first time Jonny uses that many - any speedup numbers from Jonny?
Jonny had a similar number of cores in the last WCC IIRC
Jonny wasn't very talkative towards me when i asked him how he was doing the parallel search at the supercomputer, some years ago.
diep
Posts: 1822
Joined: Thu Mar 09, 2006 11:54 pm
Location: The Netherlands

Re: WCCC June 27th in Leiden

Post by diep »

Werewolf wrote:
Harvey Williamson wrote:Just got back from the pub so sorry for the late blitz final results :)

1. Jonny
2. Shredder
3. Komodo
4. Hiarcs
Does HIARCS have a time management bug?

It seems to get short of time in most games (if the times are reported right) and has issues in the final phase. Not sure we're seeing HIARCS in its full glory.
Not really - maybe a bugged version. Look at current game.

Hiarcs-Komodo:

e4 c6 d4 d5 Nc3 dxe4 Nxe4 Nf6 Nxf6 exf6 (inferior line for black yet i'm sure Erdo played it for the reason i'm gonna show) : Bc4 Bd6 Qe2+ Be7 Nf3 O-O O-O Re8 Qd3?! weird move. But horror really starts now: after Na6 it plays Bxa6??

That's a total beginnersmove.

Diep 2012 here (december 2012) at 4 cores if i give it half an hour doesn't consider Bxa6 from the first ply to the plydepth it managed to reach. It wants Qb3 there +0.9

the move Bxa6 is instantly +0.16

Actually i would find 0.16 an evaluation mistake. After Bxa6?? which is a blunder, black suddenly has the better game.

Playing this openingsline exf6 in carokann is inferior for black. It's solid yet white has a great majority which in the end usually wins the game.

whites plan is to castle LONG. After Bxa6 bxa6 suddenly black has a great bishop pair, controls all squares , has the b-file and can advance the a-pawn to attack there and open the line or exchange a pawn (solving its doubled pawn). Black is FINE. I would even consider black to be BETTER as white has no plan.

So that +0.16 i find too high in fact after Bxa6 from Diep.

Yet it's 0.75 pawns difference in evaluation. So there is a bug somewhere in Hiarcs and i'm sure that's not easy to find. Either too dubious search which with too many entries stored in hashtables gives problems in combination with evaluation function overevaluating that doubled pawn on a-file.

You need to fix that knowledgewise AND fix the search. Qd3 + Bxa6 that's bizarre moves.

Elo 1600 type moves.
User avatar
Laskos
Posts: 10948
Joined: Wed Jul 26, 2006 10:21 pm
Full name: Kai Laskos

Re: WCCC June 27th in Leiden

Post by Laskos »

diep wrote:
Laskos wrote:
diep wrote:
Laskos wrote:
diep wrote: 2400 cores seems really a lot to me there :)

Assuming this is first time Jonny uses that many - any speedup numbers from Jonny?
What speed-up? It gets 1 billion NPS. Don't know effective speed-up. Mark says it ponders many moves simultaneously, but ponder alone cannot mean more than twice the thinking time. Pity this thing is not tested in 100 games against Komodo, to have a better idea what this is.
Good pondering can be very powerful. It reduces the time of your opponent in half not seldom at cricial moments.

So it reduces elo bigtime of your opponent in such case.

with 2400 cores i would say a clever choice from Jonny.
Ponder is at most a factor 2 in thinking time on average (either decrease the opponent's time or increase yours), and at this level would mean some 30-40 ELO points.
Reducing the elo of your opponent is way more than factor 2.
Opponent doesn't have 2400 cores.

Talking about elo is not really interesting as you just play 2 games in total.

If you have 2400 cores and you group it in 4 x 600 cores which in turn calculate at different positions, sometimes 3 plies ahead sometimes pondering other moves,
that's IMHO pretty clever.

Factor 2 scaling won't give Jonny +40 elo for sure.

Wish i had done that world champs 2003...
What you say is clever only if the scaling of the usual parallel search with many cores is bad. Would you adopt the same strategy with 4 or 8 cores only? And again, ponder is a factor of 2 only, normal chess is mostly about playing good moves, not so much about stealing time.
diep
Posts: 1822
Joined: Thu Mar 09, 2006 11:54 pm
Location: The Netherlands

Re: WCCC June 27th in Leiden

Post by diep »

Laskos wrote:
diep wrote:
Laskos wrote:
diep wrote:
Laskos wrote:
diep wrote: 2400 cores seems really a lot to me there :)

Assuming this is first time Jonny uses that many - any speedup numbers from Jonny?
What speed-up? It gets 1 billion NPS. Don't know effective speed-up. Mark says it ponders many moves simultaneously, but ponder alone cannot mean more than twice the thinking time. Pity this thing is not tested in 100 games against Komodo, to have a better idea what this is.
Good pondering can be very powerful. It reduces the time of your opponent in half not seldom at cricial moments.

So it reduces elo bigtime of your opponent in such case.

with 2400 cores i would say a clever choice from Jonny.
Ponder is at most a factor 2 in thinking time on average (either decrease the opponent's time or increase yours), and at this level would mean some 30-40 ELO points.
Reducing the elo of your opponent is way more than factor 2.
Opponent doesn't have 2400 cores.

Talking about elo is not really interesting as you just play 2 games in total.

If you have 2400 cores and you group it in 4 x 600 cores which in turn calculate at different positions, sometimes 3 plies ahead sometimes pondering other moves,
that's IMHO pretty clever.

Factor 2 scaling won't give Jonny +40 elo for sure.

Wish i had done that world champs 2003...
What you say is clever only if the scaling of the usual parallel search with many cores is bad. Would you adopt the same strategy with 4 or 8 cores only? And again, ponder is a factor of 2 only, normal chess is mostly about playing good moves, not so much about stealing time.
With Diep position is different from other engines. Engine back then and even todays hardware is 10x lower in nps becasue of having more chessknowledge. Though not so well tuned back then.

Then further you need to be realistic about supercomputers. It has for example the GCC compiler usually and slower processors usually.

So you already lose a factor 2 in advance because of inferior compiler, communication overhead bla bla.

In case of Jonny i suspect he uses same SMP algorithm like how most do it nowadays. It's not a true YBW, it's more a kind of 'attempt" to do a little YBW without hurting scaling.

Diep i used a full blown hard YBW and crafty for example also uses a hard YBW and Glaurung (nowadays stockfish) also did do a hard YBW (didn't check stockfish there).

The German dudes and also Belgium (which automatically also means rybka/houdini and komodo) are doing this soft YBW algorithm.

Which IMHO doesn't give that much improvement going from 200 cpu's to 400 cpu's.

So if you got 2400 then and divide that in 4 x 600, i fully would agree with that.

With 8 cores that's just not an option. The average hardware here from top programs is like 28-32 cores or so.

If you are doing a very well implemented hard YBW then so to speak you can build very cheaply supercomputer.

As you need to use GCC, the amd processor, older 12 core ones, are pretty ok.
not to confuse with the failed bulldozer with minicores.

Build 8 machines with 48 cores AMD, second hand on ebay for peanuts. That's like 1500 euro a box maximum?

Then use a good mellanox switch (actually that'll have 36 ports soon) and put in 2 mellanox infiniband cards, so we call that double rail.

As the pci at those 4 socket motherboards is attached to different CPU's (not cores yet really cpu's) that's double the number of messages a second you can ship around to/from switch (switch isn't the problem).

You have then for peanuts a "supercomputer" of 48 x 8 = 384 cores and each core is around 2.3Ghz then or so.

So that's 883.2Ghz in total.

The SMP algorithms used by all the PC programs aren't good enough to run at such 'supercomputers'.

Latency from node to node IS simply 1.0 microsecond and that's not so fast. Yet it'll be factor 4-8 better than the box Jonny runs at.

So the world champs 2003 hack i used to partition in 4 pools, in this case you could use 8 pools.

You quickly start the YBW search with 48 cores and then when enough splitpoints are there you split in the other nodes cores in a few dangs.

That means you lose some scaling yet the speedup is great.
Diep at such hardware we can easily figure out how many nps it gets. Which might not seem so great to you.

Latency to the RAM or to other nodes is the reason why most pc programs won't work there.

So for them it is never an option to run on a supercomputer and do what Jonny is doing.

they CAN get 128+ processor machines easily for WCC - yet their algorithms do not scale well enough.

short answer: first 1000 processors i wouldn't consider doing it - yet jonny is a 10x faster searcher than Diep realize that. So he'll need the hardware less :)
User avatar
Laskos
Posts: 10948
Joined: Wed Jul 26, 2006 10:21 pm
Full name: Kai Laskos

Re: WCCC June 27th in Leiden

Post by Laskos »

diep wrote:
Laskos wrote:
diep wrote:
Laskos wrote:
diep wrote:
Laskos wrote:
diep wrote: 2400 cores seems really a lot to me there :)

Assuming this is first time Jonny uses that many - any speedup numbers from Jonny?
What speed-up? It gets 1 billion NPS. Don't know effective speed-up. Mark says it ponders many moves simultaneously, but ponder alone cannot mean more than twice the thinking time. Pity this thing is not tested in 100 games against Komodo, to have a better idea what this is.
Good pondering can be very powerful. It reduces the time of your opponent in half not seldom at cricial moments.

So it reduces elo bigtime of your opponent in such case.

with 2400 cores i would say a clever choice from Jonny.
Ponder is at most a factor 2 in thinking time on average (either decrease the opponent's time or increase yours), and at this level would mean some 30-40 ELO points.
Reducing the elo of your opponent is way more than factor 2.
Opponent doesn't have 2400 cores.

Talking about elo is not really interesting as you just play 2 games in total.

If you have 2400 cores and you group it in 4 x 600 cores which in turn calculate at different positions, sometimes 3 plies ahead sometimes pondering other moves,
that's IMHO pretty clever.

Factor 2 scaling won't give Jonny +40 elo for sure.

Wish i had done that world champs 2003...
What you say is clever only if the scaling of the usual parallel search with many cores is bad. Would you adopt the same strategy with 4 or 8 cores only? And again, ponder is a factor of 2 only, normal chess is mostly about playing good moves, not so much about stealing time.
With Diep position is different from other engines. Engine back then and even todays hardware is 10x lower in nps becasue of having more chessknowledge. Though not so well tuned back then.

Then further you need to be realistic about supercomputers. It has for example the GCC compiler usually and slower processors usually.

So you already lose a factor 2 in advance because of inferior compiler, communication overhead bla bla.

In case of Jonny i suspect he uses same SMP algorithm like how most do it nowadays. It's not a true YBW, it's more a kind of 'attempt" to do a little YBW without hurting scaling.

Diep i used a full blown hard YBW and crafty for example also uses a hard YBW and Glaurung (nowadays stockfish) also did do a hard YBW (didn't check stockfish there).

The German dudes and also Belgium (which automatically also means rybka/houdini and komodo) are doing this soft YBW algorithm.

Which IMHO doesn't give that much improvement going from 200 cpu's to 400 cpu's.

So if you got 2400 then and divide that in 4 x 600, i fully would agree with that.

With 8 cores that's just not an option. The average hardware here from top programs is like 28-32 cores or so.

If you are doing a very well implemented hard YBW then so to speak you can build very cheaply supercomputer.

As you need to use GCC, the amd processor, older 12 core ones, are pretty ok.
not to confuse with the failed bulldozer with minicores.

Build 8 machines with 48 cores AMD, second hand on ebay for peanuts. That's like 1500 euro a box maximum?

Then use a good mellanox switch (actually that'll have 36 ports soon) and put in 2 mellanox infiniband cards, so we call that double rail.

As the pci at those 4 socket motherboards is attached to different CPU's (not cores yet really cpu's) that's double the number of messages a second you can ship around to/from switch (switch isn't the problem).

You have then for peanuts a "supercomputer" of 48 x 8 = 384 cores and each core is around 2.3Ghz then or so.

So that's 883.2Ghz in total.

The SMP algorithms used by all the PC programs aren't good enough to run at such 'supercomputers'.

Latency from node to node IS simply 1.0 microsecond and that's not so fast. Yet it'll be factor 4-8 better than the box Jonny runs at.

So the world champs 2003 hack i used to partition in 4 pools, in this case you could use 8 pools.

You quickly start the YBW search with 48 cores and then when enough splitpoints are there you split in the other nodes cores in a few dangs.

That means you lose some scaling yet the speedup is great.
Diep at such hardware we can easily figure out how many nps it gets. Which might not seem so great to you.

Latency to the RAM or to other nodes is the reason why most pc programs won't work there.

So for them it is never an option to run on a supercomputer and do what Jonny is doing.

they CAN get 128+ processor machines easily for WCC - yet their algorithms do not scale well enough.

short answer: first 1000 processors i wouldn't consider doing it - yet jonny is a 10x faster searcher than Diep realize that. So he'll need the hardware less :)
Play the best PV with MultiPV=8 on 8 cores against the same engine in normal MultiPV=1 on the same 8 cores, and you will see the level of play. I guess that due to low effective branching factors of today, partitioning cores like that does give a better result with say more than 200 cores, but by an effective speed-up of no larger than 2 again compared to YBW on all cores even if each legal move is on its dedicated processors. With the ponder trick again a factor of 2, so all these tricks do give some 70 ELO points compared to regular pondering and scaling of YBW on 2400 cores, but that's it, in fact probably less.
User avatar
AdminX
Posts: 6339
Joined: Mon Mar 13, 2006 2:34 pm
Location: Acworth, GA

Re: WCCC June 27th in Leiden

Post by AdminX »

[pgn]
[Event "ICGA World Computer Chess Championship"]
[Site "Leiden"]
[Date "2016.06.30"]
[Round "8.1"]
[White "Jonny"]
[Black "Raptor"]
[Result "1-0"]
[ECO "D24"]
[LiveChessVersion "1.4.8"]

1.d4 { [%clk 1:45:24] } 1...d5 { [%clk 1:45:27] } 2.Nf3 { [%clk 1:45:37] } 2...Nf6 { [%clk 1:45:39] } 3.c4 { [%clk 1:45:49] } 3...dxc4 { [%clk 1:45:50] } 4.Nc3 { [%clk 1:46:01] } 4...a6 { [%clk 1:46:01] } 5.e4 { [%clk 1:45:47] } 5...b5 { [%clk 1:46:11] } 6.e5 { [%clk 1:45:59] } 6...Nd5 7.a4 { [%clk 1:46:11] } 7...e6 { [%clk 1:46:37] } 8.axb5 { [%clk 1:45:50] } 8...Bb4 { [%clk 1:46:49] } 9.Bd2 { [%clk 1:40:28] } 9...Nb6 { [%clk 1:43:46] } 10.Be2 { [%clk 1:40:39] } 10...Bb7 { [%clk 1:42:01] } 11.bxa6 { [%clk 1:40:50] } 11...Rxa6 { [%clk 1:38:04] } 12.Be3 { [%clk 1:41:02] } 12...Rxa1 { [%clk 1:35:57] } 13.Qxa1 { [%clk 1:41:14] } 13...O-O { [%clk 1:31:39] } 14.O-O { [%clk 1:36:43] } 14...h6 { [%clk 1:31:50] } 15.Qc1 { [%clk 1:29:09] } 15...Nc6 { [%clk 1:23:41] } 16.Bxh6 { [%clk 1:26:36] } 16...gxh6 { [%clk 1:17:44] } 17.Qxh6 { [%clk 1:19:48] } 17...Be7 { [%clk 1:17:51] } 18.Rd1 { [%clk 1:20:01] } 18...f5 { [%clk 1:13:07] } 19.Qg6+ { [%clk 1:20:14] } 19...Kh8 { [%clk 1:09:33] } 20.Qh6+ { [%clk 1:20:22] } 20...Kg8 { [%clk 1:04:51] } 21.Bxc4 { [%clk 1:20:35] } 21...Nxc4 { [%clk 1:00:17] } 22.Qxe6+ { [%clk 1:20:46] } 22...Rf7 { [%clk 0:51:01] } 23.Qxc4 { [%clk 1:20:57] } 23...Na5 { [%clk 0:50:26] } 24.Qa4 { [%clk 1:21:09] } 24...Bxf3 { [%clk 0:47:38] } 25.gxf3 { [%clk 1:21:22] } 25...Rg7+ { [%clk 0:44:37] } 26.Kf1 { [%clk 1:21:35] } 26...Qa8 { [%clk 0:42:43] } 27.Rd3 { [%clk 1:21:48] } 27...Qa6 { [%clk 0:39:55] } 28.Ke2 { [%clk 1:21:56] } 28...Bh4 { [%clk 0:34:35] } 29.Qe8+ { [%clk 1:22:08] } 29...Kh7 30.Qh5+ { [%clk 1:22:20] } 30...Qh6 { [%clk 0:28:19] } 31.Qxf5+ { [%clk 1:22:32] } 31...Kh8 { [%clk 0:24:51] } 32.Ne4 { [%clk 1:22:45] } 32...Nc6 { [%clk 0:24:10] } 33.Qf8+ { [%clk 1:22:56] } 33...Kh7 { [%clk 0:22:39] } 34.Nf6+ { [%clk 1:23:08] } 34...Bxf6 { [%clk 0:21:39] } 35.exf6 { [%clk 1:22:57] } 35...Rg8 { [%clk 0:21:49] } 36.Qf7+ { [%clk 1:20:16] } 36...Kh8 { [%clk 0:21:59] } 37.f4 { [%clk 1:20:29] } 37...Qh7 { [%clk 0:21:22] } 38.Qc4 { [%clk 1:20:42] } 38...Nd8 { [%clk 0:19:19] } 39.Re3 { [%clk 1:20:56] } 39...Nf7 { [%clk 0:17:11] } 40.Kd2 { [%clk 1:21:08] } 40...Nh6 { [%clk 0:15:06] } 41.Rh3 { [%clk 1:21:21] } 41...Qg6 { [%clk 0:14:30] } 42.Qe6 { [%clk 1:19:36] } 42...Rf8 { [%clk 0:14:40] } 43.f5 { [%clk 1:19:49] } 43...Qg5+ { [%clk 0:14:34] } 44.Qe3 { [%clk 1:18:32] } 44...Qxe3+ { [%clk 0:14:44] } 45.fxe3 { [%clk 1:18:03] } 45...Rxf6 { [%clk 0:14:54] } 46.e4 { [%clk 1:18:16] } 46...Kg7 { [%clk 0:11:04] } 47.Rc3 { [%clk 1:15:55] } 47...c6 { [%clk 0:11:10] } 48.Rg3+ { [%clk 1:02:54] } 48...Kf7 { [%clk 0:10:21] } 49.Ke3 { [%clk 1:03:08] } 49...Ng8 { [%clk 0:09:34] } 50.Rh3 { [%clk 1:03:20] } 50...Kg7 { [%clk 0:09:11] } 51.Kf4 { [%clk 1:02:29] } 51...Kf8 { [%clk 0:09:22] } 52.e5 { [%clk 1:01:55] } 52...Rf7 { [%clk 0:09:23] } 53.Rb3 { [%clk 1:02:01] } 1-0
[/pgn]

[pgn]
[Event "ICGA World Computer Chess Championship"]
[Site "Leiden"]
[Date "2016.06.30"]
[Round "8.2"]
[White "Shredder"]
[Black "GridGinkgo"]
[Result "1/2-1/2"]
[ECO "D45"]
[LiveChessVersion "1.4.8"]

1.d4 { [%clk 1:45:28] } 1...Nf6 { [%clk 1:45:26] } 2.c4 { [%clk 1:45:41] } 2...e6 { [%clk 1:45:38] } 3.Nf3 { [%clk 1:45:53] } 3...d5 { [%clk 1:45:49] } 4.Nc3 { [%clk 1:46:04] } 4...c6 { [%clk 1:46:00] } 5.e3 { [%clk 1:46:17] } 5...Nbd7 { [%clk 1:46:11] } 6.Qc2 { [%clk 1:46:29] } 6...Bd6 { [%clk 1:46:22] } 7.b3 { [%clk 1:46:42] } 7...O-O { [%clk 1:46:30] } 8.Be2 { [%clk 1:46:56] } 8...Re8 { [%clk 1:46:40] } 9.O-O { [%clk 1:44:01] } 9...b6 { [%clk 1:40:50] } 10.Bb2 { [%clk 1:44:13] } 10...Bb7 { [%clk 1:40:15] } 11.h3 { [%clk 1:39:27] } 11...Qe7 { [%clk 1:40:23] } 12.Rfd1 { [%clk 1:33:46] } 12...Rac8 { [%clk 1:40:32] } 13.a4 { [%clk 1:30:27] } 13...a5 { [%clk 1:40:40] } 14.Rab1 { [%clk 1:27:42] } 14...Bb4 { [%clk 1:35:07] } 15.Rbc1 { [%clk 1:25:54] } 15...c5 { [%clk 1:35:05] } 16.Na2 { [%clk 1:23:33] } 16...Ne4 { [%clk 1:33:30] } 17.Nxb4 { [%clk 1:20:46] } 17...cxb4 { [%clk 1:31:27] } 18.Bd3 { [%clk 1:20:37] } 18...Red8 { [%clk 1:29:52] } 19.Bxe4 { [%clk 1:17:20] } 19...dxe4 { [%clk 1:24:44] } 20.Nd2 { [%clk 1:17:32] } 20...f5 { [%clk 1:20:09] } 21.Nf1 { [%clk 1:17:44] } 21...h5 { [%clk 1:20:09] } 22.Qe2 { [%clk 1:14:58] } 22...g6 { [%clk 1:20:19] } 23.Nd2 { [%clk 1:12:34] } 23...Kh7 { [%clk 1:18:35] } 24.Re1 { [%clk 1:10:49] } 24...Kh6 { [%clk 1:14:16] } 25.f3 { [%clk 1:09:09] } 25...exf3 { [%clk 1:12:09] } 26.Nxf3 { [%clk 1:09:14] } 26...Nf6 { [%clk 1:08:25] } 27.e4 { [%clk 1:09:01] } 27...Nxe4 { [%clk 1:07:23] } 28.Qe3+ { [%clk 1:07:07] } 28...Kh7 { [%clk 1:06:02] } 29.d5 { [%clk 1:06:20] } 29...exd5 { [%clk 1:06:11] } 30.Qxb6 { [%clk 1:05:03] } 30...dxc4 { [%clk 1:04:32] } 31.Rxc4 { [%clk 1:05:04] } 31...Rxc4 { [%clk 1:04:40] } 32.bxc4 { [%clk 1:03:18] } 32...Rd7 { [%clk 1:04:49] } 33.Qxa5 { [%clk 1:00:51] } 33...Bc6 { [%clk 1:02:42] } 34.h4 { [%clk 0:58:39] } 34...Qd6 { [%clk 1:02:51] } 35.Be5 { [%clk 0:57:07] } 35...Qc5+ { [%clk 1:02:58] } 36.Qxc5 { [%clk 0:55:23] } 36...Nxc5 { [%clk 1:03:07] } 37.Bd4 { [%clk 0:53:53] } 37...Bxf3 { [%clk 1:01:02] } 38.Bxc5 { [%clk 0:52:49] } 38...Bc6 { [%clk 1:01:11] } 39.Bxb4 { [%clk 0:50:50] } 39...Rd4 { [%clk 1:01:20] } 40.Re7+ { [%clk 0:49:26] } 40...Kg8 { [%clk 1:01:19] } 41.a5 { [%clk 0:47:12] } 41...Rxh4 { [%clk 1:00:20] } 42.Re6 { [%clk 0:47:18] } 42...Rxc4 { [%clk 1:00:06] } 43.Rxg6+ { [%clk 0:46:15] } 43...Kf7 { [%clk 1:00:15] } 44.Rd6 { [%clk 0:43:30] } 44...Ba8 { [%clk 0:59:56] } 45.Be1 { [%clk 0:41:52] } 45...Rg4 { [%clk 0:59:59] } 46.Rd2 { [%clk 0:40:39] } 46...Ke6 { [%clk 0:58:10] } 47.Re2+ { [%clk 0:39:19] } 47...Kd7 { [%clk 0:58:20] } 48.Kh2 { [%clk 0:38:16] } 48...Bd5 { [%clk 0:55:44] } 49.g3 { [%clk 0:36:24] } 49...f4 { [%clk 0:55:18] } 50.Re5 { [%clk 0:35:17] } 50...fxg3+ { [%clk 0:53:43] } 51.Bxg3 { [%clk 0:35:28] } 51...Bf7 { [%clk 0:53:48] } 52.Rb5 { [%clk 0:34:34] } 1/2-1/2
[/pgn]

[pgn]
[Event "ICGA World Computer Chess Championship"]
[Site "Leiden"]
[Date "2016.06.30"]
[Round "8.3"]
[White "Hiarcs"]
[Black "Komodo"]
[Result "0-1"]
[ECO "B15"]
[LiveChessVersion "1.4.8"]

1.d4 { [%clk 1:45:28] } 1...c6 { [%clk 1:45:24] } 2.e4 { [%clk 1:45:38] } 2...d5 { [%clk 1:45:35] } 3.Nc3 { [%clk 1:45:49] } 3...dxe4 { [%clk 1:45:46] } 4.Nxe4 { [%clk 1:45:59] } 4...Nf6 { [%clk 1:45:58] } 5.Nxf6+ { [%clk 1:46:09] } 5...exf6 { [%clk 1:46:09] } 6.Bc4 { [%clk 1:46:19] } 6...Bd6 { [%clk 1:46:20] } 7.Qe2+ { [%clk 1:46:31] } 7...Be7 { [%clk 1:44:10] } 8.Nf3 { [%clk 1:42:51] } 8...O-O { [%clk 1:44:19] } 9.O-O { [%clk 1:40:30] } 9...Re8 { [%clk 1:43:41] } 10.Qd3 { [%clk 1:36:57] } 10...Na6 { [%clk 1:43:51] } 11.Bxa6 { [%clk 1:34:09] } 11...bxa6 { [%clk 1:44:03] } 12.Re1 { [%clk 1:31:03] } 12...Qb6 { [%clk 1:43:15] } 13.c4 { [%clk 1:22:46] } 13...Be6 { [%clk 1:43:26] } 14.b3 { [%clk 1:20:05] } 14...a5 { [%clk 1:43:36] } 15.Bd2 { [%clk 1:18:08] } 15...Rab8 { [%clk 1:43:43] } 16.c5 { [%clk 1:15:23] } 16...Qc7 { [%clk 1:42:22] } 17.Re3 { [%clk 1:13:52] } 17...a4 { [%clk 1:42:31] } 18.bxa4 { [%clk 1:08:36] } 18...Qd7 { [%clk 1:40:14] } 19.a3 { [%clk 1:05:54] } 19...Bd8 { [%clk 1:35:50] } 20.Rae1 { [%clk 1:03:34] } 20...Bc7 { [%clk 1:26:33] } 21.Bb4 { [%clk 1:02:30] } 21...Bd5 { [%clk 1:20:22] } 22.R3e2 { [%clk 0:56:42] } 22...Rxe2 { [%clk 1:18:52] } 23.Qxe2 { [%clk 0:55:50] } 23...a5 { [%clk 1:17:38] } 24.Bc3 { [%clk 0:53:16] } 24...h5 { [%clk 1:17:48] } 25.Nd2 { [%clk 0:51:57] } 25...h4 { [%clk 1:17:18] } 26.h3 { [%clk 0:48:38] } 26...Qf5 { [%clk 1:17:27] } 27.Qd1 { [%clk 0:47:54] } 27...g5 28.Nf1 { [%clk 0:44:10] } 28...Kg7 { [%clk 1:14:03] } 29.Ne3 { [%clk 0:44:07] } 29...Qf4 { [%clk 1:11:10] } 30.Nxd5 { [%clk 0:41:49] } 30...Qh2+ { [%clk 1:07:54] } 31.Kf1 { [%clk 0:42:01] } 31...cxd5 { [%clk 1:06:13] } 32.Qg4 { [%clk 0:40:23] } 32...Qh1+ { [%clk 1:06:21] } 33.Ke2 { [%clk 0:40:33] } 33...Re8+ { [%clk 1:05:21] } 34.Kd1 { [%clk 0:36:41] } 34...Rxe1+ { [%clk 1:05:31] } 35.Bxe1 { [%clk 0:35:06] } 35...Qf1 { [%clk 1:05:42] } 36.Qf3 { [%clk 0:31:35] } 36...Bh2 { [%clk 1:05:51] } 37.Qf5 { [%clk 0:30:13] } 37...Bf4 { [%clk 1:05:47] } 38.c6 { [%clk 0:28:44] } 38...Qc4 { [%clk 1:05:57] } 39.Qc2 { [%clk 0:27:42] } 39...Qxd4+ { [%clk 1:06:06] } 40.Ke2 { [%clk 0:26:08] } 40...Bc7 { [%clk 1:06:12] } 41.Qb3 { [%clk 0:22:20] } 41...Qe5+ { [%clk 1:05:01] } 42.Kf1 { [%clk 0:22:30] } 42...Qd6 { [%clk 1:03:06] } 43.Qc3 { [%clk 0:22:40] } 43...d4 { [%clk 0:53:29] } 44.Qd3 { [%clk 0:22:52] } 44...Qc5 { [%clk 0:51:47] } 45.Bd2 { [%clk 0:23:03] } 45...Qd6 { [%clk 0:45:24] } 46.Be1 { [%clk 0:22:22] } 46...Qh2 { [%clk 0:38:49] } 47.Qe4 { [%clk 0:21:30] } 47...Qe5 { [%clk 0:37:35] } 48.Qd3 { [%clk 0:21:41] } 48...Qd6 { [%clk 0:36:05] } 49.Bd2 { [%clk 0:21:48] } 49...Qc5 { [%clk 0:33:55] } 50.f4 { [%clk 0:20:31] } 50...Bxf4 { [%clk 0:32:17] } 51.Bxf4 { [%clk 0:19:43] } 51...gxf4 { [%clk 0:32:29] } 52.Kg1 { [%clk 0:14:23] } 52...Qxc6 { [%clk 0:30:34] } 53.Qxd4 Qc1+ { [%clk 0:29:39] } 54.Kf2 { [%clk 0:14:42] } 54...Qc2+ { [%clk 0:28:34] } 55.Kg1 { [%clk 0:14:29] } 55...Qf5 { [%clk 0:25:38] } 56.Qf2 { [%clk 0:14:37] } 56...Qg5 { [%clk 0:25:12] } 57.Kf1 { [%clk 0:13:59] } 57...Kg6 { [%clk 0:24:21] } 58.Qe1 { [%clk 0:13:12] } 58...Kg7 { [%clk 0:22:43] } 59.Qe4 { [%clk 0:12:40] } 59...Qe5 { [%clk 0:21:45] } 60.Qd3 { [%clk 0:12:02] } 60...Qa1+ { [%clk 0:21:34] } 61.Kf2 { [%clk 0:11:06] } 61...Qb2+ { [%clk 0:21:44] } 62.Kg1 { [%clk 0:10:48] } 62...Qc1+ { [%clk 0:21:52] } 63.Kf2 { [%clk 0:10:04] } 63...Qc5+ { [%clk 0:21:57] } 64.Kf1 { [%clk 0:10:10] } 64...Qe5 { [%clk 0:18:52] } 65.Qd1 { [%clk 0:09:43] } 65...Qf5 { [%clk 0:17:21] } 66.Qd4 { [%clk 0:09:53] } 66...Kh6 { [%clk 0:16:17] } 67.Qc4 { [%clk 0:09:29] } 67...Kg7 { [%clk 0:15:29] } 68.Qd4 { [%clk 0:08:39] } 68...Qe5 { [%clk 0:15:41] } 69.Qd3 { [%clk 0:07:16] } 69...Qc5 { [%clk 0:15:31] } 70.Qe4 { [%clk 0:06:23] } 70...Qg5 { [%clk 0:13:32] } 71.Qf3 { [%clk 0:05:13] } 71...Qf5 { [%clk 0:12:56] } 72.Kg1 { [%clk 0:05:25] } 72...Qg5 { [%clk 0:12:10] } 73.Kf1 { [%clk 0:05:11] } 73...Qf5 { [%clk 0:11:47] } 74.Kg1 { [%clk 0:05:09] } 74...Qc5+ { [%clk 0:11:28] } 75.Kf1 { [%clk 0:05:15] } 75...Qc4+ { [%clk 0:09:38] } 76.Kf2 { [%clk 0:05:04] } 76...Kh6 { [%clk 0:08:44] } 77.Qa8 { [%clk 0:04:43] } 77...Qc5+ { [%clk 0:08:36] } 78.Kf1 { [%clk 0:04:39] } 78...Qc1+ { [%clk 0:07:57] } 79.Kf2 { [%clk 0:04:49] } 79...Qd2+ { [%clk 0:07:39] } 80.Kg1 { [%clk 0:04:39] } 80...Kg7 { [%clk 0:07:04] } 81.Qf3 { [%clk 0:04:13] } 81...f5 { [%clk 0:07:13] } 82.Qh5 { [%clk 0:04:02] } 82...Qe1+ { [%clk 0:06:50] } 83.Kh2 { [%clk 0:04:14] } 83...Qg3+ { [%clk 0:06:54] } 84.Kg1 { [%clk 0:03:44] } 84...f3 { [%clk 0:07:05] } 85.Qxf3 { [%clk 0:03:42] } 85...Qxf3 { [%clk 0:07:09] } 86.gxf3 { [%clk 0:03:49] } 86...Kg6 { [%clk 0:06:07] } 87.Kf2 { [%clk 0:03:00] } 87...Kf6 { [%clk 0:06:18] } 88.Ke2 { [%clk 0:02:53] } 88...Ke6 { [%clk 0:06:29] } 89.Kd2 { [%clk 0:02:39] } 89...Kd6 { [%clk 0:06:40] } 90.Kd3 { [%clk 0:02:47] } 90...Kd5 { [%clk 0:06:47] } 91.Kc3 { [%clk 0:02:58] } 91...Ke5 { [%clk 0:06:55] } 92.Kc4 { [%clk 0:02:39] } 92...Kf4 { [%clk 0:07:06] } 93.Kb5 { [%clk 0:02:46] } 93...Kxf3 { [%clk 0:07:16] } 94.Kxa5 { [%clk 0:02:51] } 94...Kg3 { [%clk 0:06:57] } 95.Kb6 { [%clk 0:02:27] } 95...f4 { [%clk 0:06:12] } 96.a5 { [%clk 0:02:37] } 96...f3 { [%clk 0:06:20] } 97.a6 { [%clk 0:02:45] } 97...f2 { [%clk 0:06:32] } 98.a7 { [%clk 0:02:18] } 98...f1=Q { [%clk 0:06:41] } 99.a8=Q { [%clk 0:02:26] } 99...Qf2+ { [%clk 0:06:35] } 100.Kc7 { [%clk 0:02:25] } 100...f5 { [%clk 0:06:46] } 101.a4 { [%clk 0:02:29] } 101...f4 { [%clk 0:06:54] } 102.a5 { [%clk 0:02:35] } 102...f3 { [%clk 0:06:25] } 103.Qd5 { [%clk 0:02:46] } ( 103.Qd5 { [%clk 0:02:46] } 103...Kh2 { 1-0, Hiarcs - Komodo, ICGA World Computer Chess Championship, Leiden (8.3), 2016.06.30 } ) 0-1


[/pgn]
"Good decisions come from experience, and experience comes from bad decisions."
__________________________________________________________________
Ted Summers