Difference between revisions of "CilkChess"

From Chessprogramming wiki
Jump to: navigation, search
(Created page with "'''Home * Engines * CilkChess''' '''CilkChess''', a massive parallel chess program written in the C or C++ multithreaded pro...")
 
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
'''[[Main Page|Home]] * [[Engines]] * CilkChess'''
 
'''[[Main Page|Home]] * [[Engines]] * CilkChess'''
  
'''CilkChess''',
+
'''CilkChess''',<br/>
a massive [[Parallel Search|parallel]] chess program written in the [[C]] or [[Cpp|C++]] multithreaded programming extension [[Cilk]]. Cilkchess was developed by various authors from [[Massachusetts Institute of Technology|MIT]] and elsewhere headed by [[Charles Leiserson]] and programming lead by [[Don Dailey]] <ref>[https://www.game-ai-forum.org/icga-tournaments/program.php?id=56 Cilkchess' ICGA Tournaments]</ref><ref>[http://supertech.csail.mit.edu/chess/ The Cilkchess Parallel Chess Program]</ref>.
+
a massive [[Parallel Search|parallel]] chess program written in the [[C]] or [[Cpp|C++]] multithreaded programming extension [[Cilk]]. CilkChess was developed by various authors from [[Massachusetts Institute of Technology|MIT]] and elsewhere headed by [[Charles Leiserson]] and programming lead by [[Don Dailey]] <ref>[https://www.game-ai-forum.org/icga-tournaments/program.php?id=56 Cilkchess' ICGA Tournaments]</ref><ref>[http://supertech.csail.mit.edu/chess/ The Cilkchess Parallel Chess Program]</ref>.
  
 
=Photos & Games=
 
=Photos & Games=
 
[[FILE:HiarcsCilk1999.JPG|none|border|text-bottom|640px]]  
 
[[FILE:HiarcsCilk1999.JPG|none|border|text-bottom|640px]]  
[[WCCC 1999]], round 7, [[Hiarcs]] - [[CilkChess]], [[Erdogan Günes]], [[Charles Leiserson]] (back of head), and [[Don Dailey]] <ref>Image captured from [http://www.top-5000.nl/Paderborn_1999_1.mp4 Paderborn 1999 1.mp4] by [[Thorsten Czub]] hosted by [[Ed Schroder|Ed Schröder]]</ref> <ref>[https://www.game-ai-forum.org/icga-tournaments/round.php?tournament=8&round=7&id=12 Paderborn 1999 - Chess - Round 7 - Game 12 (ICGA Tournaments)]</ref>
+
[[WCCC 1999]], round 7, [[HIARCS]] - [[CilkChess]], [[Erdogan Günes]], [[Charles Leiserson]] (back of head), and [[Don Dailey]] <ref>Image captured from [http://www.top-5000.nl/Paderborn_1999_1.mp4 Paderborn 1999 1.mp4] by [[Thorsten Czub]] hosted by [[Ed Schroder|Ed Schröder]]</ref> <ref>[https://www.game-ai-forum.org/icga-tournaments/round.php?tournament=8&round=7&id=12 Paderborn 1999 - Chess - Round 7 - Game 12 (ICGA Tournaments)]</ref>
 
<pre>
 
<pre>
 
[Event "WCCC 1999"]
 
[Event "WCCC 1999"]
Line 25: Line 25:
 
</pre>
 
</pre>
  
=Cilkchess Team=
+
=CilkChess Team=
 
* [[Reid Barton]]
 
* [[Reid Barton]]
 
* [[Don Beal]] (engine programmer)
 
* [[Don Beal]] (engine programmer)
Line 40: Line 40:
 
=Quotes=
 
=Quotes=
 
from Awards for Cilk Technology & Research <ref>[http://www.cilk.com/company/awards/ Awards for Cilk Technology & Research]</ref>:
 
from Awards for Cilk Technology & Research <ref>[http://www.cilk.com/company/awards/ Awards for Cilk Technology & Research]</ref>:
* 1996 First Place in the [[DOCCC 1996|1996 Dutch Open Computer Chess Championship]] for Cilkchess
+
* 1996 First Place in the [[DOCCC 1996|1996 Dutch Open Computer Chess Championship]] for CilkChess
* 1997 Second Place in the [[DOCCC 1997|1997 Dutch Open Computer Chess Championship]] for Cilkchess
+
* 1997 Second Place in the [[DOCCC 1997|1997 Dutch Open Computer Chess Championship]] for CilkChess
  
 
=Description=
 
=Description=
from the [[WCCC 1999]] homepage <ref>[http://wwwcs.uni-paderborn.de/%7Ewccc99/ 9th World Computer Chess Championship 1999] Homepage</ref>:
+
from the [[WCCC 1999]] ICGA Tournament site <ref>[https://www.game-ai-forum.org/icga-tournaments/program.php?id=56 CilkChess' ICGA Tournaments]</ref>:  
 
  Cilkchess is a parallel program which will be running on a 256-processor SGI Origin 2000 at NASA Ames for the WCCC. Cilkchess won First Prize in the 1996 Dutch Open and took Second in both 1997 and 1998. Our earlier program, [[Star Socrates|*Socrates]], took Second in the [[WCCC 1995|1995 WCCC]], tying the winner [[Fritz]] in the main part of the tournament, but losing in the playoff.
 
  Cilkchess is a parallel program which will be running on a 256-processor SGI Origin 2000 at NASA Ames for the WCCC. Cilkchess won First Prize in the 1996 Dutch Open and took Second in both 1997 and 1998. Our earlier program, [[Star Socrates|*Socrates]], took Second in the [[WCCC 1995|1995 WCCC]], tying the winner [[Fritz]] in the main part of the tournament, but losing in the playoff.
  
  CilkChess is programmed in the [[Cilk]] multithreaded programming language <ref>[[Don Dailey]] and [[Charles Leiserson|Charles E. Leiserson]] ('''2001'''). ''Using Cilk to Write Multiprocessor Chess Programs'', [[Advances in Computer Games 9]], [http://supertech.csail.mit.edu/papers/icca99.pdf pdf]</ref>, which allows highly irregular programs, such as chess, to be written with ease for parallel computers. The program uses a parallel variant of the [[MTD(f)]] search algorithm that incorporates [[Null Move Pruning|null-move forward pruning]], but few [[Extensions|extensions]]. The [[Evaluation Function|evaluation function]] has been tuned from thousands of self-play games using a [[Temporal Difference Learning|temporal-coherence learning]] algorithm. The [[Transposition Table|transposition table]] is stored in 32 gigabytes of shared memory. In the late middle game, Cilkchess typically looks more than 15 [[Ply|ply]] (half-moves) ahead and performs 5-11 million [[Make Move|make-moves]] per second.  
+
  CilkChess is programmed in the [[Cilk]] multithreaded programming language <ref>[[Don Dailey]], [[Charles Leiserson|Charles E. Leiserson]] ('''2001'''). ''Using Cilk to Write Multiprocessor Chess Programs'', [[Advances in Computer Games 9]], [http://supertech.csail.mit.edu/papers/icca99.pdf pdf]</ref>, which allows highly irregular programs, such as chess, to be written with ease for parallel computers. The program uses a parallel variant of the [[MTD(f)]] search algorithm that incorporates [[Null Move Pruning|null-move forward pruning]], but few [[Extensions|extensions]]. The [[Evaluation Function|evaluation function]] has been tuned from thousands of self-play games using a [[Temporal Difference Learning|temporal-coherence learning]] algorithm. The [[Transposition Table|transposition table]] is stored in 32 gigabytes of shared memory. In the late middle game, Cilkchess typically looks more than 15 [[Ply|ply]] (half-moves) ahead and performs 5-11 million [[Make Move|make-moves]] per second.  
  
 
=See also=
 
=See also=
Line 73: Line 73:
  
 
'''[[Engines|Up one Level]]'''
 
'''[[Engines|Up one Level]]'''
 +
[[Category:Mainframe]]
 +
[[Category:Quotes]]
 +
[[Category:Chess Suffix]]
 +
[[Category:MTD(f)]]

Latest revision as of 21:05, 9 September 2020

Home * Engines * CilkChess

CilkChess,
a massive parallel chess program written in the C or C++ multithreaded programming extension Cilk. CilkChess was developed by various authors from MIT and elsewhere headed by Charles Leiserson and programming lead by Don Dailey [1][2].

Photos & Games

HiarcsCilk1999.JPG

WCCC 1999, round 7, HIARCS - CilkChess, Erdogan Günes, Charles Leiserson (back of head), and Don Dailey [3] [4]

[Event "WCCC 1999"]
[Site "Paderborn, Germany"]
[Date "1999.06.19"]
[Round "7"]
[White "Hiarcs"]
[Black "CilkChess"]
[Result "0-1"]

1.d4 e6 2.c4 c5 3.Nf3 Nf6 4.e3 cxd4 5.exd4 d5 6.Nc3 Nc6 7.Bg5 Be7 8.c5 O-O 
9.Bb5 Bd7 10.O-O b6 11.Na4 bxc5 12.Bxf6 Bxf6 13.Nxc5 Re8 14.Rc1 Rc8 15.Ba6 
Rb8 16.b3 Qa5 17.a4 Rb4 18.Nd3 Rb6 19.Bb5 Rxb5 20.axb5 Nxd4 21.Nxd4 Bxd4 
22.Qc2 Bxb5 23.Rfd1 Qb6 24.Nc5 Be5 25.Qd2 Qb8 26.g3 Bf6 27.Rc2 Qa8 28.f3 a5 
29.Rdc1 Be7 30.Qd4 Bg5 31.f4 Bf6 32.Qd2 d4 33.Nd3 Be7 34.Rd1 Qf3 35.Ne5 Qe4 
36.Ra2 d3 37.Qg2 Qd4+ 38.Kh1 Bb4 39.Qb7 Qc5 40.Qe4 d2 41.Kg2 Qb6 42.Rc2 Rd8 
43.g4 f6 44.Nc6 Qb7 45.Qxe6+ Kf8 46.Kf2 Re8 47.Qd5 Bxc6 48.Rxc6 Qa7+ 0-1

CilkChess Team

Quotes

from Awards for Cilk Technology & Research [5]:

Description

from the WCCC 1999 ICGA Tournament site [6]:

Cilkchess is a parallel program which will be running on a 256-processor SGI Origin 2000 at NASA Ames for the WCCC. Cilkchess won First Prize in the 1996 Dutch Open and took Second in both 1997 and 1998. Our earlier program, *Socrates, took Second in the 1995 WCCC, tying the winner Fritz in the main part of the tournament, but losing in the playoff.
CilkChess is programmed in the Cilk multithreaded programming language [7], which allows highly irregular programs, such as chess, to be written with ease for parallel computers. The program uses a parallel variant of the MTD(f) search algorithm that incorporates null-move forward pruning, but few extensions. The evaluation function has been tuned from thousands of self-play games using a temporal-coherence learning algorithm. The transposition table is stored in 32 gigabytes of shared memory. In the late middle game, Cilkchess typically looks more than 15 ply (half-moves) ahead and performs 5-11 million make-moves per second. 

See also

Publications

Forum Posts

External Links

References

Up one Level