The STARTECH Massively-Parallel Chess Program

The StarTech massively parallel chess program, running on a 512-processor Connection Machine CM-5 supercomputer, tied for third place at the 1993 ACM International Computer Chess Championship. StarTech employs the Jamboree search algorithm, a natural extension of J. Pearl’s Scout search algorithm, to find parallelism in game-tree searches. StarTech’s work-stealing scheduler distributes the work specified by the search algorithm across the processors of the CM-5. StarTech uses a global transposition table shared among the processors. StarTech has an informally estimated rating of over 2400 USCF. Two performance measures help in understanding the performance of the StarTech program: the work, , and the critical path length, . The Jamboree search algorithm used in StarTech seems to perform about 2 to 3 times more work than does our best serial implementation. The critical path length, under tournament conditions, is less than 0.1% of the total work, yielding an average parallelism of over 1000. The StarTech scheduler achieves actual performance of approximately 1 02 1 5 on processors. The critical path and work can be used to tune performance by allowing development of the program on a small, readily accessable, machine while predicting the performance on a big, tournament-sized, machine.

[1]  Donald E. Eastlake,et al.  The Greenblatt chess program , 1967, AFIPS '67 (Fall).

[2]  Donald E. Knuth,et al.  The Solution for the Branching Factor of the Alpha-Beta Pruning Algorithm , 1981, ICALP.

[3]  A. Elo The rating of chessplayers, past and present , 1978 .

[4]  George C. Stockman,et al.  A Minimax Algorithm Better than Alpha-Beta? , 1979, Artif. Intell..

[5]  Hans J. Berliner,et al.  The B* Tree Search Algorithm: A Best-First Proof Procedure , 1979, Artif. Intell..

[6]  Judea Pearl,et al.  Asymptotic Properties of Minimax Trees and Game-Searching Procedures , 1980, Artif. Intell..

[7]  Ivan Bratko,et al.  THE BRATKO-KOPEC EXPERIMENT: A COMPARISON OF HUMAN AND COMPUTER PERFORMANCE IN CHESS , 1982 .

[8]  T. Anthony Marsland,et al.  Parallel Search of Strongly Ordered Game Trees , 1982, CSUR.

[9]  Selim G. Akl,et al.  Design, Analysis, and Implementation of a Parallel Tree Search Algorithm , 1982, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[10]  John Philip Fishburn Analysis of speedup in distributed algorithms , 1984 .

[11]  Jonathan Schaeffer,et al.  Multiprocessor tree-search experiments , 1986 .

[12]  Arnie Kwong,et al.  Fall Joint Computer Conference , 1987, Data Base.

[13]  David A. McAllester Conspiracy Numbers for Min-Max Search , 1988, Artif. Intell..

[14]  Carl Ebeling,et al.  Pattern Knowledge and Search: The SUPREM Architecture , 1989, Artif. Intell..

[15]  李幼升,et al.  Ph , 1989 .

[16]  V. Rich Personal communication , 1989, Nature.

[17]  Feng-hsiung Hsu Large scale parallelization of alpha-beta search: an algorithmic and architectural study , 1989 .

[18]  Bruce W. Suter,et al.  A parallel alpha/beta tree searching algorithm , 1989, Parallel Comput..

[19]  M. Sarrafzadeh Department of electrical engineering and computer science , 1990, SIGD.

[20]  Burkhard Monien,et al.  Distributed Game Tree Search on a Massively Parallel System , 1992, Data Structures and Efficient Algorithms.

[21]  Bradley C. Kuszmaul,et al.  Synchronized MIMD computing , 1994 .

[22]  Robert D. Blumofe,et al.  Scheduling multithreaded computations by work stealing , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[23]  V. Quarles,et al.  Department of Electrical Engineering and Computer Science , 1994 .

[24]  Bradley C. Kuszmaul,et al.  Cilk: an efficient multithreaded runtime system , 1995, PPOPP '95.