CDC Cyber

From Chessprogramming wiki
Jump to: navigation, search

Home * Hardware * CDC Cyber

Cyber 176 [1]

CDC Cyber,
a family of mainframe supercomputers by Control Data Corporation during the 1970s and 1980s, included five very different models, 60-bit Cyber 70/170, 64-bit Cyber 180 and 200, Cyberplus and Cyber-18.

Cyber 70/170

The 70 and 170 series was based on the 60-bit architecture of the CDC 6600 and CDC 7600. The Cyber-170 series represented CDCs move from discrete electronic components and core memory to integrated circuits and semiconductor memory.

Architecture

The 170 had eight 18-bit address registers (A0 through A7), eight 18-bit index registers (B0 through B7), and eight 60-bit operand registers (X0 through X7). Seven of the A registers were tied to their corresponding X register. Setting A1 through A5 read that address and fetched it into the corresponding X1 through X5 register. Likewise, setting register A6 or A7 wrote the corresponding X6 or X7 register to central memory at the address written to the A register.

CDC Cyber 170 CPU architecture.png

Hardware architecture of the CDC Cyber 170 [2]

Chess Programs

Most prominent chess program running on CDC Cyber 70/170 was Northwestern University's Chess 4.x, supported by CDC Cyber hardware consultant David Cahlander. Already at the WCCC 1974, with Chess still running on a CDC 6600, Nils Barricelli's Freedom ran on a Cyber 74. At ACM 1975, with Iron Fish on a Cyber 74, Chess 4.4 already ran on a Cyber 175 [4], Chess 4.5 at ACM 1976, Chess 4.6 at ACM 1977, Chess 4.7 at ACM 1978, also playing the Levy match, and Chess 4.9 at ACM 1979 all ran on a 60-bit Cyber 176 [5]. Martin Bryant's first chess program, White Knight, written in Pascal, was compiled to ran on a Cyber 72 [6]. Nuchess played the WCCC 1980 on Cyber 176, so did the Austrian Merlin at the International Computer Chess Tournament 1984. Chat played the WCCC 1986 on a Cyber 175.

Population Count

Axel H. Horns in a reply to Steven M. Bellovin in a discussion on CDC Population Count [7]:

From this lecture I own a copy of "CONTROL DATA CYBER 70 SERIES - 6000 SERIES - 7600 COMPUTER SERIES" pocket manual "COMPASS VERSION 3" printed in 1973. This document clearly states that in the CYBER 70 Models 74 and 6600 Computers, the opcode "47" for "population count" was executed by the DIVIDE UNIT. Contrary, the CYBER 70 Models 76 and 7600 Computers had a separate POPULATION COUNT UNIT. If I understood the opcode table correctly  the respective opcode was executed in one or two clock cycles (very fast; the same as shift opcodes). 

Mobility in Chess 4.6

Mobility in Chess 4.6 based on 47 CXi Xk Population Count, written in COMPASS, the CDC Macro Assembler [8]. The square list aka bitboard was loaded into two 60-bit registers, with both populations added and stored.

** COUNTS - COUNT MEMBERS OF A SQUARE LIST

COUNTS MACRO Y
.STST
LOADS Y
.CHK2
CX'.S1' X'.S1'
CX'.S2' X'.S2'
IX'.SS' X'.S2'+X'.S1'
.STND
COUNTS ENDM 
...
SETQ MOBIL,(PLUS,(COUNTS,(INDEXS,ATKFR,(LSHIFT,SQLN,1))),MOB

Cyber 180

The Cyber 180 series systems were full 64-bit machines. Memory was 64-bit word and 8-bit byte addressable. Integers were 64 bits long, though 32-bit integers were used for addresses in instructions. Floating point numbers were 64 bits for single precision, and 128 bits for double precision.

See also

Publications

External Links

CDC CYBER Photos and CDC Advertising Material

References

Up one Level