Průkopníci informačního věku (23.) Seymour Cray

22. 4. 2012

Sdílet

 Autor: © Kirill Kurashov - Fotolia.com
Jeho jméno se pro mnohé stalo synonymem slova superpočítač. Lze říci, že snad žádný jiný projektant a konstruktér počítačů neovlivnil oblast svého působení tak jako Seymour Cray, „otec superpočítačů“, který po více než čtvrtstoletí překvapoval svět svým uměním dosáhnout toho, co se jiným zdálo nemožné.

Zajímá vás, kudy vedla cesta k superpočítačům a chcete se dozvědět něco o jejich duchovním otci? Pak je dnešní historické okénko určeno právě pro vás!

 

Když bylo na začátku šedesátých let ve Spojených státech uvedeno do provozu několik na svou dobu velmi výkonných počítačů, začalo se hovořit o segmentu „superpočítačů“. Tyto stroje byly konstruovány za účelem dosažení co nejvyššího výkonu, který byl podložen řadou podstatných konstrukčních inovací a vynálezů. Řada nových řešení, od systémového designu a architektury, využití nových polovodičových technologií, rychlejších a spolehlivějších operačních pamětí po řešení specifických technických problémů, jako jsou např. zpracování příkazů či práce s chybou v operační paměti, se posléze postupně prosazovala v nastupující další generaci běžných počítačů.

Ačkoli se superpočítače zpočátku používaly především coby nástroje obrany státu, zvláště v oblasti vývoje jaderných systémů a kryptografie, brzy našly široké uplatnění i v civilním sektoru, a to nejen ve vědě, lékařství, průmyslu a bankovnictví, kde umožňovaly dokonalejší tvorbu modelů a testování jevů vyznačujících se vysokou mírou složitosti, ale i v kinematografii, kam přinesly pokročilejší způsoby vytváření animací.

Klíčovou roli v evoluci těchto výkonných strojů hrál počítač IBM 7030, označovaný též Stretch. Vznikl na objednávku jaderné laboratoře v Los Alamos a byl představen v roce 1961. Mohl být nasazen jak pro náročné vědecké výpočty, tak pro zpracování dat, což umožňovala zabudovaná binární i dekadická aritmetika (64 bitů nebo 16 dekadických číslic ve slově), operace v pevné nebo pohyblivé čárce a rozsáhlý soubor 154 instrukcí. Stretch byl rovněž jedním z prvních počítačů, v němž se využívaly přímý přístup do operační paměti (Direct Memory Access) a technologie průběžné kontroly správnosti dat, jež nahradila dosud využívaný osciloskop a ruční přepínače na pultu operátora.

Jednalo se přirozeně o obrovský kolos, stroj zabíral plochu 225 metrů čtverečních a vážil 31 tun. Sedm kusů počítače Stretch, které IBM vyrobila, našlo uplatnění v jaderných výzkumných laboratořích a ve vojenských výzkumných střediscích. Tento počet představoval pro vedení IBM zklamání, neboť společnost předpokládala, že Stretch nalezne větší uplatnění jak ve vědecké, tak i průmyslové sféře.    Potíž byla v tom, že výpočetní rychlost tohoto stroje byla záhy překonána jinými počítači, jejímiž výrobci byly i poměrně malé, nedávno vzniklé firmy, jež záhy získaly přízvisko „trpaslíci“. Jedna z nich začala brzy dělat představitelům mocné IBM vrásky na čele. Již dva roky po testech a instalaci IBM 7030 uvedla totiž mladá firma Control Data počítač CDC 6600, který ve výkonnosti odsunul produkt IBM na druhé místo. Autorem systémového designu a architektury tohoto počítače byl Seymour Cray, počítačový vědec, jenž si díky svému inovativnímu úsilí dokázal udržet první příčku na žebříčku nejvýkonnějších počítačů více než čtvrtstoletí.

Jasný cíl

Seymour Cray se narodil v roce 1925 ve městě Chippewa Falls ve státě Wisconsin, kde také později umístil svá vývojová střediska, v nichž vznikly nejvýkonnější počítače své doby. Jeho otec byl stavebním inženýrem, který dohlížel na stavby přehrad a později se stal městským inženýrem. Mladý Seymour Cray prožil v Chippewa Falls celé dětství. Ve škole vynikal ve všech předmětech, ale nejvíce se zajímal o techniku, zejména elektrotechniku, takže na střední škole, jak později uvedl, strávil nejvíc času ve fyzikální laboratoři. Vlastně žil ve světě techniky od útlého dětství – otec jej nejen zasvěcoval do svého oboru a bral jej na stavby, které řídil, ale také všemožnými způsoby podporoval jeho zájem o vědu a techniku.

Když byl Seymour po vstupu Spojených států do války povolán do armády, doplnil si své znalosti ve vojenském elektrotechnickém kurzu a po dobu války sloužil nejprve jako radista na západní frontě v Evropě, později se stal členem týmu, který luštil japonské šifry v Pacifiku. Po válce, když už měl za sebou značné praktické zkušenosti, byl přijat na Minnesotskou univerzitu, kde vystudoval elektrické inženýrství a aplikovanou matematiku, což byla nejlepší kvalifikace k tomu, aby mohl uskutečnit svůj životní plán – chtěl se dostat do firmy, která se zabývá konstrukcí počítačů.

Tento záměr mu vyšel, když se v roce 1950 stal zaměstnancem Engineering Research Associates (ERA), jedné z raných počítačových firem. Ta vznikla za války, kdy bylo potřeba vyvinout metody k luštění tajných šifer, a sídlila v Saint Paul ve státě Minnesota, ve staré dřevěné budově, jež byla dříve továrnou na větroně. I když byla ERA založena rovněž díky podpoře armády Spojených států a k jejím hlavním úkolům patřil vývoj šifrovacího zařízení, jež by umožnilo bezpečnější komunikaci mezi americkými ponorkami, zakrátko se stala jednou ze společností, jejíž pracovníci se snažili počítačové technologie, které byly vyvinuté původně pro potřeby armády, využít pro komerční účely. Seymour Cray nastoupil do skupiny vývoje počítačů a do této práce se vrhl s obrovským nadšením.

Za krátkou dobu se mu podařilo seznámit se prakticky se všemi aspekty souvisejícími s počítači té doby, od problematiky logických obvodů po vývoj programů (což byla oblast, která byla na počátku padesátých let teprve v plenkách). Jeho prvním příspěvkem byla účast na vytvoření návrhu počítače ERA 1103, prvního komerčního počítače, jenž byl zkonstruován pro vědecké aplikace a který se později prodával pod označením UNIVAC 1103.

Superpočítače CDC

Když byla v roce 1953 společnost ERA prodána firmě Remington Rand, jež tři roky předtím získala i jejího hlavního konkurenta, Eckert-Mauchly Computer Corporation, stal se Cray jedním z vedoucích pracovníků nově ustanovené divize Univac, jejíž náplní byl vývoj výkonných mainframů. V jeho profesním životě šlo však o pouhou epizodu, neboť o čtyři roky později přijal nabídku Williama Norrise, aby s ním odešel do nově založené společnosti Control Data Corporation. Remington Rand totiž krátce předtím uskutečnila fúzi s korporací Sperry, čímž vznikl elektronický gigant Sperry Rand. Norris, původně jeden z klíčových lidí ERA, se v byrokraticky řízeném molochu Sperry-Rand necítil příliš dobře, a proto se rozhodl se svými dvěma spolupracovníky založit malou firmu, která se původně soustřeďovala na vývoj a výrobu periferních zařízení pro počítače, jako byly čtečky a děrovače děrných štítků a bubnové tiskárny.

Seymour Cray se zakrátko v Control Data stal jedním z klíčových lidí. Přesvědčil vedení společnosti, aby vrhlo své úsilí zejména na vývoj výkonných počítačů, v čemž měl již dobré zkušenosti. A protože mu Norris vyšel vstříc, Cray se zaměřil na vývoj nového typu počítače kompletně založeného na polovodičových tranzistorech namísto dosud používaných elektronek.

Cray nejprve zkonstruoval menší prototyp šestibitového tranzistorového počítače „Little Character“, na němž si vyzkoušel technologii, jež mu později umožnila sestavit mnohem výkonnější a složitější mainframy. Jednalo se především o užití modulární architektury, při níž využil pouze omezené množství unifikovaných typů plošných spojů osazených tranzistory a pasivními součástkami. Tyto moduly byly prostřednictvím konektorů mezi sebou vzájemně propojeny. Skutečnost, že využil omezené množství unifikovaných plošných spojů, Crayovi umožňovala konstruovat počítače o něco levněji než konkurence, neboť modulární architektura zjednodušovala nejen výrobu, ale i následné oživování počítače spojené s testováním jednotlivých modulů.

Toto řešení pak Cray aplikoval na konstrukci CDC 1604, prvního komerčně úspěšného tranzistorového počítače. Tento stroj uvedený v roce 1960 zpracovával slova o šířce 48 bitů a dosahoval rychlosti 100 tisíc operací za sekundu. Kromě vědeckých středisek našel využití i ve vojenské oblasti, kde sloužil k navádění mezikontinentálních střel LGM-30A Minuteman. Celkem se prodalo na padesát kusů a díky tomuto úspěchu se společnost Control Data začala více orientovat na vývoj mainframů, přičemž Cray získal pro činnost svého týmu velmi dobré podmínky.

Jeho ambice nebyly v žádném případě skromné. Od začátku šedesátých let začal pracovat na konstrukci počítače CDC 6600, který měl být padesátkrát výkonnější než předchozí model 1604, s nímž společnost slavila úspěchy. Cray získal nové prostory ve firmě, kde měl tento počítač vzniknout. Hned na začátku však nastaly potíže s tranzistory. Společnost dosud využívala germaniové tranzistory, ale ty se ukázaly jako nevhodné pro přepínání binárního signálu na frekvencích dosahujících několika desítek MHz. Aby se vyhnul těmto potížím, začal Cray používat křemíkové tranzistory od společnosti Fairchild Semiconductor, které se právě dostaly na trh a jejichž přepínací rychlost byla značně vyšší. To bylo správné rozhodnutí. Problémem bylo, že v té době firma Control Data procházela transformačním procesem a začal se z ní stávat významný podnik se strategickým významem, což doprovázely některé negativní jevy.

Cray, jemuž vadilo, že na některé své požadavky musí kvůli byrokratickým překážkám příliš dlouho čekat, oznámil řediteli Norrisovi, že za této situace bude muset firmu opustit. Tomu se Norris chtěl za každou cenu vyhnout, neboť si uvědomoval, že Cray je pro společnost nepostradatelný. Z tohoto důvodu se rozhodl přistoupit na jakékoli požadavky. Cray navrhl vytvoření jakési „skunčí dílny“ (skunk works), jak se od války říkalo samostatným oddělením, jež některé firmy zakládaly, pokud bylo nutné vyřešit naléhavý problém. Skunčí dílna, která sdružila tým úzce spolupracujících odborníků, zpravidla dostala co největší míru volnosti, což jejím členům umožňovalo pracovat na úkolu nezávisle na hierarchii a byrokracii podniku. Norris s tímto návrhem souhlasil, a tak vznikla v Chippewa Falls, Crayově rodném městě, samostatná laboratoř, kterou měl se svým týmem zcela k dispozici.

Počítač, který byl v této laboratoři v roce 1963 dokončen, se vskutku stal nejvýkonnějším přístrojem na světě a bývá někdy označován za první skutečný superpočítač. (Toto výkonnostní prvenství si udržel až do roku 1969, kdy byl překonán svým následovníkem CDC 7600.) Vysokého výkonu dosahoval díky redukované instrukční sadě (připomínající pozdější architekturu mikroprocesoru RISC). Operační paměť, sestavená z feritových jader, byla rozdělena na samostatně pracující moduly, přičemž se při čtení dat nebo strojových instrukcí z operační paměti přistupovalo k jednotlivým paměťovým modulům v takzvaném prokládaném režimu (každé slovo bylo přečteno z jiného modulu). Tento režim za ideálních podmínek umožňoval v každém strojovém cyklu přečíst či zapsat jedno šedesátibitové slovo. Vedle hlavního procesoru disponoval CDC 6600  ještě deseti procesory – ty byly určeny pro ovládání periferních zařízení a pro přístup do operační paměti. S dobrou kompilací dokázal stroj dosáhnout rychlosti až 10 milionů operací za sekundu, tedy 1 MFLOPS. Tento výkon a značná spolehlivost mu zajistily komerční úspěch. Přes vysokou cenu, jež se pohybovala v rozmezí 6–10 milionů amerických dolarů, se během šedesátých let prodala asi stovka těchto výkonných mainframů.

I když tento mohutný stroj sloužil jako základ pro řadu označovanou jako 6000, jejíž zdokonalené modely byly představovány v průběhu šedesátých let, Cray se záhy po jeho dokončení plně soustředil na zcela nový projekt, jímž byl již zmíněný superpočítač CDC 7600. Díky využití dokonalejších polovodičových komponentů a dalším novým technologiím, zejména instrukční pipeline (zřetězení operací), dokázal dosáhnout tento stroj desetkrát vyššího výkonu než jeho předchůdce – ručně optimalizované programy dosahovaly výkonu až 10 MFLOPS, ale teoretický výkon při současné práci všech funkčních jednotek mohl být ještě třikrát vyšší.

Vektorový superpočítač

„Je šokující, že v laboratoři, která vyvinula nejvýkonnější počítačový systém na světě a odsunula nás na druhé místo, pracuje pouze třicet čtyři lidí,“ prohlásil v reakci na Crayovy úspěchy v oblasti výkonných počítačů Thomas Watson Jr., výkonný ředitel IBM. Ale Seymour Cray na tom nic šokujícího neviděl. Naopak, za úspěchem nenápadného střediska v Chippewa Falls bylo podle něj právě to, co připadalo Watsonovi šokující – malý tým lidí, kteří se dokázali plně oddat své vizi.

IBM se samozřejmě nehodlala smířit s tím, že v segmentu nejvýkonnějších počítačů začala hrát druhé housle. V roce 1965 ohlásil Watson Jr. superpočítač s pracovním názvem ASC, ale jeho vývoj byl po čtyřech letech zastaven (některé modely z tohoto projektu využívala armáda Spojených států k navádění mezikontinentálních raket Titan II a Titan III). To, že IBM své produkty ohlašovala slovy „nejvýkonnější počítač na světě“, rozezlilo Williama Norrise, jenž za touto obchodní politikou nejmocnější světové počítačové společnosti viděl snahu o zlikvidování Control Data na základě nekalé hospodářské soutěže. Z tohoto důvodu se s Big Blue pustil do soudního sporu. Ačkoli v něm nakonec uspěl a IBM musela jeho firmě uhradit více než 600 milionů dolarů coby kompenzaci za ušlé zisky, společnost Control Data dlouhodobá právní pře ochromila. Soudní spor byl jedním z důvodů, proč vázlo financování nového projektu, jímž byla konstrukce superpočítače CDC 8600 a proč se Seymour Cray v roce 1972 rozhodl, že Control Data definitivně opustí a založí svou vlastní firmu. K dalším důvodům patřil jak Crayův spor s některými kolegy, kteří prosazovali jinou koncepci, tak i náznaky, že společnost kvůli finančním problémům své aktivity v oblasti nejvýkonnějších počítačů zastaví.

Norris o tom zprvu samozřejmě nechtěl ani slyšet, ale finanční problémy, které firmu v té době sužovaly, nemohl popřít. Žádal Craye o trpělivost, ale tu si tvůrce superpočítačů vzhledem k silné konkurenci nemohl dovolit – Cray si byl vždy vědom, že nestačí pouze inovovat, nýbrž že pro udržení výsostného postavení na trhu, které si dosud vydobyl, je také nezbytné inovace co nejrychleji realizovat. Nakonec tedy došlo k smírnému rozchodu obou mužů, o čemž svědčí i fakt, že se Norris záhy stal jedním z nejvýznamnějších akcionářů Crayovy společnosti. Firma s názvem Cray Research vybudovala svoje vývojové středisko ve wisconsinském městě Chippewa Falls nedaleko od laboratoří Control Data, na pozemcích, které Cray k tomuto účelu zakoupil; svoje sídlo však umístila v Minneapolis ve státě Minnesota. Cray, jenž se stal prezidentem a výkonným ředitelem, představil byznys plán, který byl křišťálově jasný – společnost se hodlala stát výrobcem nejvýkonnějších počítačů na světě.

Prodej akcií společně s příspěvkem pěti milionů dolarů, který získal od Americké laboratoře pro jaderný výzkum, umožnily Crayovi pokračovat ve vývoji nového superpočítače s funkčními jednotkami, které mohly zpracovávat data uložená ve vektorech. Oproti klasickému sekvenčnímu zpracování mělo toto řešení dvakrát až čtyřikrát urychlit výpočetní výkon při provádění numerických operací s číselnými hodnotami reprezentovanými systémem s plovoucí čárkou.

Z této koncepce vzešel Cray-1 představený v roce 1976. Tento stroj, jehož model s pořadovým číslem 001 získala jaderná laboratoř v Los Alamos, dosahoval výkonu 160 MFLOPS a stal se prvním vektorovým superpočítačem na světě. Vektorový počítač, jehož procesor může zpracovávat současně všechny složky vektoru, a to až do určité délky (např. 64 nebo 128 složek), představuje významný mezník, jímž se otevřela nová kapitola ve vývoji výpočetní techniky. Protože je v mnohých technických a vědeckých výpočtech zpracování vektorů velice časté, koncepce vektorového počítače našla (a dodnes nachází) uplatnění v obrovské spoustě praktických výpočtů (údajně až 70?% všech algoritmů má buďto přímo vektorový charakter, nebo se na něj před numerickou realizací převede). Dodejme, že vektorový koprocesor se po čase stal také součástí procesorů Intel Pentium MMX a vyšších. (A není bez zajímavosti, že např. již procesor  Intel 860 s architekturou RISC  byl uveden sloganem „Cray on the Chip“, což byla samozřejmě nemalá nadsázka.)

Cray-1, jehož moduly tvořily nejnovější integrované obvody ELC, vynikal nejen špičkovou technologií, ale i zcela unikátním designem. Oproti předcházejícím strojům s označením CDC, ale i oproti mainframům od IBM a dalších společností byl vzhledem k existujícím superpočítačům překvapivě malý. Byl sestaven z dvanácti vysokých skříní, které vzájemně vytvářely tříčtvrteční kruh, přičemž půdorys počítače tak tvořit tvar písmene C. V prvních letech firma prodala dvanáct modelů první verze superpočítače Cray-1, což vzbuzovalo rozpaky, ale po představení zdokonalených modelů Cray-1S a Cray-1M, který byl uveden v roce 1982, a zejména poté, co si společnost získala jméno a důvěru, vystoupal celkový prodej na 80 kusů, a to už byl značný úspěch. Dodejme, že cena jednoho modelu se zhruba pohybovala od 5 do 9 milionů dolarů a zákazníky byly především vládní instituce, tedy jaderné laboratoře a další špičková vědecká střediska.

„Otec superpočítačů“

Navzdory silné konkurenci dokázal Seymour Cray po více než čtvrtstoletí udržovat první příčku ve výkonnosti superpočítačů. Od počátku byl věrný vlastnímu postupu, jehož základem bylo kontinuální zjednodušování (např. Cray-1 se skládal pouze ze čtyř druhů integrovaných obvodů) a neustálé hledání nových cest, jak prostřednictvím nejnovějších technologií dosáhnout co nejvyšší výkonnostní optimalizace procesorů a operační paměti. Velkou pozornost rovněž věnoval studiu připomínek a návrhů nejen od svých spolupracovníků, ale i od zákazníků.

Že zvyšování výkonnosti považoval za své poslání, o tom svědčí skutečnost, že se v roce 1980 vzdal postu výkonného ředitele společnosti, aby se plně mohl soustředit pouze na svou práci. Zatímco jeho spolupracovníci pracovali na konstrukci multiprocesorového počítače Cray X-M, Craye již plně zaměstnávala příprava nové generace superpočítače s názvem Cray-2.

Vývoj tohoto zařízení provázely potíže nejen rázu technologického, ale i organizačního. Důvodem byl přirozeně další mimořádně ambiciózní cíl, neboť Cray-2 měl vůči svým předchůdcům dosáhnout desetinásobného výkonu, což si vyžádalo zcela nový přístup. Samozřejmostí bylo využití integrovaných obvodů s větší integrací (vývoj v tomto směru šel rychle kupředu), kámen úrazu ale nastal v okamžiku, kdy se řešilo jejich propojení a způsob chlazení. Problém spočíval také v tom, jak minimalizovat následky výkonnostní disproporce procesorů a operačních pamětí.

ICTS24

Cray-2 představený v roce 1985 se přiblížil k hranici 1,9 GFLOPS, přičemž tato hodnota mu zajistila výkonnostní prvenství téměř po dobu pěti let. Vyznačoval se nejen novým způsobem modulárního řešení, ale i unikátním přímým kapalinovým chlazením, kdy byla speciální kapalina vháněna přímo do jednotlivých skříní a kvůli němuž byl uživateli přezdíván jako „Bubbles“. (Vtipálci mezi pracovníky vědeckých ústavů údajně s oblibou umísťovali na jednotky počítače nápis „Zákaz rybaření!“.) Málokdo však mohl tušit, že vlivem událostí v Cray Research, a zejména kvůli geopolitickému vývoji na přelomu osmdesátých a devadesátých let, šlo o poslední Crayův nejvýkonnější superpočítač, který se dostal na trh.

Během své pozoruhodné profesionální kariéry se Cray ze všech sil bránil dvěma aspektům, jimž se žel život úspěšného projektanta a podnikatele stěží vyhýbá – publicitě a byrokracii. Kvůli byrokracii opustil nejen manažerské posty ve společnostech Control Data a Cray Research, ale nakonec i svou vlastní firmu. Došlo k tomu v roce 1988, kdy se během práce na designu superpočítače Cray-3 objevily ve společnosti finanční nesrovnalosti a s nimi i řada problémů, které bylo nutno řešit. Aby se vyhnul zdlouhavým řízením, založil Cray po dohodě s vedením firmy nezávislou pobočku Cray Computer Corporation v Colorado Springs. Jednalo se vlastně opět o jakousi „skunčí dílnu“, kde mohl s čistým stolem začít pracovat na dalším výkonnostním překonání posledního modelu.

Pokračování článku naleznete na sesterském magazínu CIO Business World.