CDC STAR-100

CDC STAR-100
CDC STAR-100 - 8MB and 4MB versions.png
Två CDC STAR-100, i 8 MB version (framkant) och 4 MB version (bakgrund)
Design
Tillverkare Control Data Corporation
Designer Jim Thornton
Utgivningsdatum 1974 ( 1974 )
Hölje
Mått





Hel dator ca : Höjd : 212 cm (83 tum) Längd : 745 cm (293 tum) Invändiga sektioner : Höjd : 76 tum (190 cm) Bred : 28,5 tum (72 cm) Djup : 30 tum (76 cm)
Vikt 2 200 pund (1 000 kg)
Kraft 250 kW @ 208 V 400 Hz
Systemet
Operativ system HELIOS
CPU 64-bitars processor @ 25 MHz
Minne Upp till 8 megabyte (4 * 4 * 64K x 64 bitar)
Lagring -
MIPS 1 MIPS ( skalär )
FLOPPAR 100 MFLOPS ( vektor )
Företrädare -
Efterträdare CDC Cyber ​​200

CDC STAR-100 är en vektorsuperdator som designades, tillverkades och marknadsförs av Control Data Corporation ( CDC ). Det var en av de första maskinerna som använde en vektorprocessor för att förbättra prestandan på lämpliga vetenskapliga tillämpningar. Det var också den första superdatorn som använde integrerade kretsar och den första som var utrustad med en miljon ord datorminne .

STAR är en blandning av ST -ringar (av binära siffror) och AR -strålar. 100:an anspelar på den nominella toppbearbetningshastigheten på 100 miljoner flyttalsoperationer per sekund ( MFLOPS ); den tidigare CDC 7600 gav toppprestanda på 36 MFLOPS men körde mer typiskt på cirka 10 MFLOPS.

Designen var en del av ett bud som gjordes till Lawrence Livermore National Laboratory (LLNL) i mitten av 1960-talet. Livermore letade efter en partner som skulle bygga en mycket snabbare maskin på sin egen budget och sedan hyra ut den resulterande designen till labbet. Det tillkännagavs offentligt i början av 1970-talet, och den 17 augusti 1971 meddelade CDC att General Motors hade lagt den första kommersiella beställningen på den.

Ett antal grundläggande designegenskaper hos maskinen innebar att dess verkliga prestanda var mycket lägre än förväntat när den först användes kommersiellt 1974, och var en av de främsta anledningarna till att CDC drevs bort från sin tidigare dominans på superdatormarknaden när Cray- 1 tillkännagavs 1975. Endast tre STAR-100-system levererades, två till LLNL och ytterligare ett till NASA Langley Research Center .

Beskrivning

STAR hade en 64-bitars arkitektur , bestående av 195 instruktioner . Dess främsta innovation var införandet av 65 vektorinstruktioner för vektorbearbetning . Operationerna som utfördes av dessa instruktioner var starkt påverkade av koncept och operatörer från APL -programmeringsspråket; i synnerhet, begreppet "kontrollvektorer" (vektormasker i modern terminologi), och flera instruktioner för vektorpermutation med kontrollvektorer, överfördes direkt från APL.

Vektorinstruktionerna opererade på vektorer som lagrades på på varandra följande platser i huvudminnet; minnesadressering var virtuell . Vektorinstruktionerna matade en aritmetisk pipeline ; en enda instruktion kan lägga till två vektorer med variabel längd på upp till 65 535 element med bara en instruktionshämtning. STAR hämtade också vektoroperander i 512-bitars enheter (superord), vilket minskade den genomsnittliga minneslatensen.

Eftersom minnesplatsen för den "nästa" operanden är känd kan CPU:n hämta nästa operander medan den arbetar på de föregående. Precis som med instruktionspipelines i allmänhet var tiden som togs för att slutföra en instruktion inte bättre än den var tidigare, men eftersom CPU:n arbetar på ett antal datapunkter samtidigt, förbättras den övergripande prestandan dramatiskt.

Många av STAR:s instruktioner var komplexa, särskilt vektormakroinstruktionerna , som utförde komplexa operationer som normalt skulle ha krävt långa sekvenser av instruktioner. Dessa instruktioner, tillsammans med STAR:s allmänt komplexa arkitektur, implementerades med mikrokod .

Huvudminnet hade en kapacitet på 65 536 512-bitars ord , kallade superord (SWORDs). Huvudminnet var 32-vägs interfolierat till pipelineminnesåtkomster. Den konstruerades från kärnminne med en åtkomsttid på 1,28 μs. Huvudminnet nås via en 512-bitars buss, styrd av lagringsåtkomstkontrollanten ( SAC ), som hanterade förfrågningar från strömningsenheten . Strömenheten får åtkomst till huvudminnet via SAC via tre 128-bitars databussar, två för läsning och en för skrivning. Det finns också en 128-bitars databuss för instruktionshämtning, I/O och kontrollvektoråtkomst. Strömningsenheten tjänar som styrenhet, hämtar och avkodar instruktioner, initierar minnesåtkomster på uppdrag av pipelined funktionsenhet, och kontrollerar instruktionsexekvering, bland andra uppgifter. Den innehåller också två läsbuffertar och en skrivbuffert för att strömma data till exekveringsenheterna.

STAR-100 har två aritmetiska pipelines. Den första har en flyttalsadderare och multiplikator, och den andra kan exekvera alla skalära instruktioner. Den innehåller också en flyttalsadderare, multiplikator och delare. Båda pipelines är 64-bitars för flyttalsoperationer och styrs av mikrokod. STAR-100 kan dela upp sina flyttalspipelines i fyra 32-bitars pipelines, vilket fördubblar systemets toppprestanda till 100 MFLOPS på bekostnad av halva precisionen.

STAR-100 använder I/O-processorer för att avlasta I/O från CPU:n. Varje I/O-processor är en 16-bitars minidator med ett eget huvudminne på 65 536 ord på 16 bitar vardera, vilket är implementerat med kärnminne. I/O-processorerna delar alla en 128-bitars databuss till SAC.

Verkliga prestanda, användare och effekt

STAR-100:s verkliga prestanda var en bråkdel av dess teoretiska prestanda av ett antal anledningar. För det första hade vektorinstruktionerna, som är "minne-till-minne", en relativt lång starttid, eftersom pipelinen från minnet till de funktionella enheterna var mycket lång. I motsats till de registerbaserade pipelined funktionella enheterna i 7600, var STAR pipelines mycket djupare. Problemet förvärrades av det faktum att STAR hade en långsammare cykeltid än 7600 (40 ns mot 27,5 ns). Så vektorlängden som behövdes för att STAR skulle köra snabbare än 7600 inträffade vid cirka 50 element; om slingorna arbetade på datamängder med färre element, var tidskostnaden för att sätta upp vektorpipelinen högre än den tidsbesparing som vektorinstruktionen/-erna gav.

När maskinen släpptes 1974 blev det snabbt uppenbart att den allmänna prestandan var en besvikelse. Mycket få program kan effektivt vektoriseras till en serie enstaka instruktioner; nästan alla beräkningar kommer att förlita sig på resultaten från några tidigare instruktioner, men resultaten var tvungna att rensa pipelines innan de kunde matas in igen. Detta tvingade de flesta program att betala den höga installationskostnaden för vektorenheterna, och i allmänhet de som gjorde det. "arbete" var extrema exempel. Ännu värre, grundläggande skalär prestanda offrades för att förbättra vektorprestanda. Varje gång programmet behövde köra skalära instruktioner, sjönk maskinens totala prestanda dramatiskt. (Se Amdahls lag .)

Två STAR-100-system levererades så småningom till Lawrence Livermore National Laboratory och ett till NASA Langley Research Center . Som förberedelse för STAR-leveranserna utvecklade LLNL-programmerare ett bibliotek med subrutiner , kallat STACKLIB , på 7600:an för att emulera vektoroperationerna för STAR. I processen med att utveckla STACKLIB fann de att program som konverterats för att använda det körde snabbare än de hade tidigare, även på 7600. Detta satte ytterligare press på STAR:s prestanda.

STAR-100 var en besvikelse för alla inblandade. Jim Thornton , tidigare Seymour Crays nära assistent i CDC 1604 och 6600- projekten och chefsdesignern för STAR, lämnade CDC för att bilda Network Systems Corporation . En uppdaterad version av den grundläggande arkitekturen släpptes senare 1979 som Cyber ​​203 , följt av Cyber ​​205 1980, men vid det här laget fanns system från Cray Research med betydligt högre prestanda på marknaden. Misslyckandet med STAR ledde till att CDC drevs bort från sin tidigare dominans på superdatormarknaden, något de försökte åtgärda med bildandet av ETA Systems i september 1983.

Installationer

Fem CDC STAR-100 byggdes. Leveranser startade från 1974:

  • Control Data Corporation, Arden Hills, MN (2)
  • Lawrence Livermore National Laboratory. (2)
  • NASA Langley

Vidare läsning

  • RG Hintz och DP Tate, "Control Data STAR-100 processor design," Proc. Compcon , 1972, s. 1–4.

externa länkar