Cray Blitz

From Chessprogramming wiki
Jump to: navigation, search

Home * Engines * Cray Blitz

The New Champion, Chess Life, February 1984 [1]

Cray Blitz,
was the successor of the program Blitz by Robert Hyatt and Albert Gower. With the sponsorship of Cray Research, supported by Dave Darling and Derek Robb [2], and later by Cray Assembly expert Harry Nelson from the Lawrence Livermore National Laboratory [3], they adopted and optimized Blitz for a Cray-1 supercomputer [4], later a Cray X-MP, Cray Y-MP and C916 with up to 16 processors. Cray Blitz initially used root splitting as parallel search algorithm on the two processor Cray X-MP, implemented and tested just before the WCCC 1983 [5], later principal variation splitting [6], enhanced principal variation splitting [7], and in the 90s DTS [8], specifically designed for a shared memory multiprocessor architecture of the Crays. Cray Blitz was written in Fortran, time-critical parts in the Cray Assembly Language CAL.

Cray Blitz won two times the ACM North American Computer Chess Championships and also was two times winner of the World Computer Chess Championships, the WCCC 1983 in New York [9] , and the WCCC 1986 in Cologne [10].

Photos & Game

WCCC 1983


Harry Nelson, Robert Hyatt and Don Beal, Cray Blitz vs BCP, WCCC 1983 [11]

[Event "WCCC 1983"]
[Site "New York, USA"]
[Date "1983.10.22"]
[Round "1"]
[White "Cray Blitz"]
[Black "BCP"]
[Result "1-0"]

1.e4 c5 2.Nf3 Nf6 3.e5 Nd5 4.Nc3 e6 5.Nxd5 exd5 6.d4 Nc6 7.dxc5 Bxc5 8.Qxd5 Qb6 
9.Qd2 O-O 10.Bc4 Re8 11.O-O Nxe5 12.Nxe5 Rxe5 13.Qf4 Qf6 14.Qxf6 gxf6 15.Kh1 d5 
16.f4 Rh5 17.Be2 Rh4 18.Bf3 d4 19.g3 Rh3 20.f5 Kg7 21.Kg2 Rh6 22.Bxh6+ Kxh6 
23.Bd5 Kg7 24.Rad1 a5 25.Kh1 Ra6 26.Be4 b5 27.Rfe1 Bd7 28.Rd2 Bc6 29.Bxc6 Rxc6 
30.Re8 Bb6 31.Rb8 b4 32.Rb7 Kf8 33.Re2 Bc7 34.g4 Rc5 35.Ra7 Bb6 36.Ra6 Rc6 
37.Rd2 Rd6 38.Rd3 Kg7 39.c3 Kg8 40.a4 Kg7 41.cxb4 axb4 42.a5 Bc5 43.Rxd6 Bxd6 
44.Rxd4 Bc5 45.Rd5 Be3 46.Rd3 Bc5 47.Rd7 Be3 48.a6 h5 49.gxh5 Kf8 50.Rd3 Bc5 
51.Rg3 Ke8 52.h6 Bd6 53.a7 Ke7 54.Rd3 Bc7 55.a8=Q Bd6 56.h7 b3 57.Qb7+ Ke8 
58.h8=Q+ Bf8 59.Qe4# 1-0

WCCC 1986


Cray Blitz vs. HiTech, WCCC 1986 [12]

[Event "WCCC 1986"]
[Site "Cologne, Germany"]
[Date "1986.06.15"]
[Round "5"]
[White "Cray Blitz"]
[Black "Hitech"]
[Result "1-0"]

1.d4 d5 2.c4 dxc4 3.Nf3 Nf6 4.e3 e6 5.Bxc4 c5 6.Qe2 a6 7.dxc5 Bxc5 8.O-O b5 
9.Rd1 Qe7 10.Bd3 e5 11.e4 Nc6 12.Nc3 Bg4 13.Be3 Rd8 14.h3 Bxe3 15.Qxe3 Bxf3 
16.Qxf3 Nd4 17.Qg3 O-O 18.a4 b4 19.Nd5 Nxd5 20.exd5 Rxd5 21.Bxa6 b3 22.Qe3 Rfd8 
23.Bc4 Nc2 24.Qe2 Rc5 25.Rxd8+ Qxd8 26.Rb1 Nd4 27.Qf1 Qd7 28.Ra1 Qc6 29.Bb5 Nxb5
30.axb5 Qb7 31.Ra3 g6 32.Rxb3 Qd5 33.Rb4 Rc2 34.b3 Qd2 35.Rc4 Rb2 36.Re4 Qd5 
37.Qc4 Qd1+ 38.Kh2 Rxf2 39.Rxe5 Qd6 40.Qc8+ Kg7 41.Qc5 Qd2 42.Rg5 Re2 43.Rg4 Qa2 
44.Qc3+ Kg8 45.b6 Qa8 46.Qc7 Qf8 47.b7 Re8 48.Rc4 Kg7 49.Rc6 Rb8 50.Qc8 Rxc8 
51.bxc8=Q Qb4 52.Qc7 Qxb3 53.Qe5+ Kh6 54.Qf4+ Kg7 55.Qd4+ Kh6 56.Rb6 Qc2 
57.Qf4+ Kg7 58.Qf6+ Kh6 59.Qxf7 Qc8 60.Rd6 1-0

View this game on

ACM 1988

3-1 and 3-2.Nelson Hyatt Weiner.ACM 19 NACCC.Orlando.1988.102645367.NEWBORN.lg.jpg

Nelson, Hyatt, Weiner at the 19th ACM 1988, Orlando [13]

Picture taken around move 19th (after 18.Qa5 and before 20.b3)[14] 
[Event "ACM 1988"]
[Site "Orlando USA"]
[Date "1988.11.13"]
[Round "2"]
[White "Mephisto"]
[Black "Cray Blitz"]
[Result "1/2-1/2"]

1.Nf3 d5 2.d4 Bf5 3.c4 e6 4.Qb3 b6 5.Nc3 dxc4 6.Qxc4 Nf6 7.Bg5 Be7 8.e3 Nbd7 9.Qc6 Bb4 
10.Bxf6 gxf6 11.Rc1 a6 12.Be2 Ra7 13.Nh4 Bxc3+ 14.Rxc3 Bb1 15.Qa4 Be4 16.O-O Qb8 17.Rfc1 
b5 18.Qa5 Nb6 19.f3 Bd5 20.b3 Ba8 21.Rc5 f5 22.g3 Nd5 23.e4 fxe4 24.fxe4 Ne7 25.Bf3 O-O 
26.Rg5+ Ng6 27.Rcc5 Rd8 28.Qc3 Qb6 29.Rg4 Rd7 30.Bg2 Bb7 31.Nf3 Ra8 32.Ne5 Rd6 33.Qe3 Kf8 
34.Nf3 Ke8 35.e5 Rd7 36.Ng5 Bxg2 37.Kxg2 h5 38.Re4 Qb7 39.Qf3 Rad8 40.Qf2 Re7 41.Kg1 Red7 
42.Rc1 Re7 43.Rf1 a5 44.Qf6 Qb6 45.Rd1 Qc6 46.Re2 Qc3 47.Nxf7 Rxd4 48.Rf1 Qd3 49.Ref2 h4
50.Rf3 Qc2 51.R1f2 Qc1+ 52.Kg2 hxg3 53.hxg3 Qb1 54.Nh8 Nxh8 55.Qxh8+ Kd7 56.Rf7 Qe4+ 
57.Kh2 Rxf7 58.Rxf7+ Kc6 59.Qe8+ Kb6 60.Qb8+ Qb7 61.Qxb7+ Kxb7 62.Kg2 Rd5 63.g4 Rxe5 
64.Kf3 Re1 65.Rf4 1/2-1/2

View this game on


by Robert Hyatt, September 2008 [15]:

It was originally FORTRAN as that was the only choice on the system we had in 1968. I started to convert it to PL/1 several times, but each time I thought about it, portability was an issue as PL/1 was really an IBM language at first, and then when the Cray came along in the mid 70's it was obvious that they were never going to be anything but a FORTRAN machine, so I stuck with FORTRAN.
For speed, we did lots of profiling and rewrote the time-critical parts in cray assembly language. We made sure that the CAL code was functionally equivalent to the FORTRAN code so that we could debug things, but the CAL was pretty wild in that it was really tailored to use the architectural tricks available in the Cray, such as vector operations, tons of registers, etc.
I think I will put the whole mess on my ftp box in case anyone is interested. I played one test game between CB and Crafty last night, one CPU, no pondering since CB can't yet ponder, 10 secs per move. Crafty won handily, typically searching 14-15 plies to CB's 9-10. I even used the nm=2 command to set null-move R=2 in CB. Not quite sure why the depth is so different, other than the checks and things CB does in the q-search might be a bit out of control, and/or the extensions might be "too much". But in any case, it played just fine, although not all compilers are going to be happy compiling it I'd bet... 

See also


1981 ...

1985 ...

1990 ...

2020 ...

Forum Posts

1990 ...

2000 ...

2010 ...

2020 ...

External Links


  1. The New Champion by Harold Bogner, Chess Life, February 1984, pdf from The Computer History Museum, Cover Photo: Ken Thompson, Joe Condon, Robert Hyatt, and Albert Gower
  2. The Eleventh ACM's North American Computer Chess Championship, pdf from The Computer History Museum
  3. Letter to Robert Hyatt August 5, 1981 (pdf) Courtesy of Harry Nelson from The Computer History Museum
  4. Robert Hyatt (1983). Cray Blitz - A Computer Chess Playing Program. Master's Thesis, University of Southern Mississippi
  5. Robert Hyatt, Albert Gower, Harry Nelson (1985). Cray Blitz. Advances in Computer Chess 4, reprinted (1988). in Computer Chess Compendium
  6. Robert Hyatt (1985). Parallel Chess on the Cray X-MP/48. ICCA Journal, Vol. 8, No. 2
  7. Robert Hyatt, Harry Nelson (1990). Chess and Supercomputers, details on optimizing Cray Blitz. Proceedings of Supercomputing '90
  8. The DTS high-performance parallel tree search algorithm by Robert Hyatt
  9. Harry Nelson (1984). How We Won The Computer Chess World's Championship. Excerpt from a talk given at the DAS Computer Science Colloquium, pdf, Courtesy of Harry Nelson from The Computer History Museum
  10. Robert Hyatt, Albert Gower, Harry Nelson (1990). Cray Blitz. Computers, Chess, and Cognition
  11. László Lindner, A SZÁMÍTÓGÉPES SAKK KÉPEKBEN című melléklete - The pictures of the Beginning of Chess Computers
  12. Photo from Historic Pictures by Ed Schröder
  13. Photo from The Computer History Museum (wrong text)
  14. Downloads Games Country championships from the CSVN site
  15. Re: Cray Blitz source (Carey) by Robert Hyatt, CCC, September 10, 2008
  16. An interesting book with some insights on Bob's Cray Blitz by Julien Marcel, CCC, June 23, 2011
  17. Transposition tables in Cray Blitz by Erin Dame, CCC, September 26, 2016
  18. David E. Welsh, Boris Baczynskyj (1985). Computer Chess II. William C Brown Publications, ISBN-13: 978-0697099112
  19. Re: Old programs CHAOS and USC by Dann Corbit, CCC, July 11, 2015
  20. How fast was the Cray? by Sean Evans, CCC, September 23, 2016

Up one Level