Computerhistorie: ETA en CONVEX (1989 – 1994)
ETA en CONVEX: van -40 C tot +40 C
De voorgeschiedenis van “high-speed computing” op het FEL
Op 15 oktober 1987 werd de ETA-lijn van supercomputers officieel geannonceerd in Parijs. TNO-breed ontstond de behoefte aan (mini-)superrekenen bij een aantal instituten: het KRI, Grondwaterverkenning in Delft, het Prins Maurits Laboratorium, Rijswijk (PML) en FEL-TNO op de Waalsdorpervlakte. Begin 1988 werd een eerste marktverkenning gedaan. Ook werd een benchmark voorbereid. Naast synthetische programma’s werden ook de ‘grote’ simulatieprogramma’s van het PML-TNO en FEL-TNO op de VAXen en de CYBER 840A geschikt gemaakt voor het draaien van benchmarks.
Sterk geïnteresseerd door de literatuur over nieuwe vertalerontwikkelingen, met name voor vector- en parallelverwerking, werd het door Prof. van der Vorst (TU Delft) ontworpen kernelprogramma verkregen om testen te kunnen uitvoeren. Deze kernel, die aan de TNO verzameling van test- en benchmarkprogramma’s toegevoegd werd, bepaalde de Mflop-snelheid van het systeem bij oplopende vectorlengte alsmede de zogenaamde n½, de vectorlengte waarbij de halve pieksnelheid voor een specifieke berekening behaald wordt. Het programma deed deze bepaling voor een vijftigtal wiskundige basisbewerkingen.
Deze kernel werd ook gedraaid met de, volgens CDC, sterk verbeterde FTN2/VE vertaler die ontwikkeld was voor de CYBER 990, een systeem met vectorhardware. De doorvoersnelheid bleek ook in de scalaire omgeving van de CYBER 840A 30% beter te scoren dan die van de ‘oude’ FTN/VE vertaler. Nadere analyse toonde echter verrassende afwijkingen voor een aantal van de vijftig basisbewerkingen. Zo kostte de bepaling van de maximumwaarde van een array slechts vijf Compass (assembler) instructies onder de oude vertaler tegen wel dertig onder de nieuwe. Op basis van deze kerneltesten konden wij aangeven dat de leverancier met de FTN2/VE vertaler nog eens een tien procent snelheidsverbetering kon bereiken. De door ons gesuggereerde verbeteringen zijn dan ook in een latere versie van de Fortran vertaler geïmplementeerd.
Met het voorbereiden van de eigen verzameling TNO-programma’s voor de benchmark bleek het slechter gesteld te zijn. Veel van de programma’s die veel CPU-tijd verstookten bleken vaak niet eens vertaald te zijn met de ‘optimize’-vertaleroptie aan. Reden voor sommige gebruikers: dan werkt het programma niet meer! Het kostte vele zweetdruppels om alle programmeerfouten uit de aangeleverde programma’s te halen. Eerst draaiden wij de programma’s daarom met de FTN/VE-vertaler met opt=high. Als dit goede resultaten gaf, werd het programma onderworpen aan de FTN2/VE-vertaler om de vectorisatiemogelijkheden op te voeren. Om CDC specifieke Fortran-dialecten uit te sluiten, werd het programma vervolgens op de DEC VAX 8350 gedraaid. Daarna werden alle programmaverbeteringen aan de gebruikers doorgegeven. Hierdoor werd in een aantal gevallen een snelheidsverbetering van 30% bereikt !
Daarna werden de benchmarkprogramma’s gedraaid op de CYBER 205 nationale supercomputer en de CYBER 995 (NOS/VE systeem met vectorfaciliteit) bij het Academisch Rekencentrum in Amsterdam (tegenwoordig SURFSARA), een ETA-10P in Minneapolis en op het Alliant FX/40-systeem met twee CPU’s van het DGV-TNO.
Na uitgebreide contractonderhandelingen werd in oktober 1988 door het FEL besloten tot de lease van een ETA-10P mini-supercomputer.
ETA-10P architectuur: hergebruik van ‘afvalchips’
De ETA-10P, codenaam “Piper” was ontworpen door Neil Lincoln onder de leiding van J.E. Thornton – de detail design ontwerper van o.a. de CDC 6600– als technisch directeur van ETA. Gebruik werd gemaakt van de CPU-chips die als ‘traag’ uitvielen bij de productie van de vloeibare stikstof gekoelde ETA-10E processoren. De marketingbeslissing om de trage chips te gebruiken werd genomen door Carl Ledbetter, die van IBM kwam. De relatief goedkope supercomputer entry level machine mocht zelfs geëxporteerd worden naar de derde wereld. Alleen werden dan bepaalde krachtige hardwareinstructies uitgeschakeld (bijvoorbeeld scatter-gather) die gebruikt zouden kunnen worden voor simulatie en ontwerp van nucleaire reacties (bijv. berekening van 10K * 10K determinant en matrixberekeningen). De CPU-chip had 284 pootjes: alleen met een microscoop was goed te zien of de automatische soldering goed gelukt was. De ETA-10P processor zat op een luchtgekoeld high-tech 44 layer bord met 20.000 ragfijne boorgaatjes (1.5 mil). Het CPU-bord bevatte 4 Mwoorden shared geheugen van 64 bits. Daarnaast had de ETA-10P een common memory van 8 Mwoorden van 64 bits. De kloksnelheid bedroeg 24 nanoseconden. Middels ‘pipelining’ bereikte de ETA-10P een pieksnelheid van 146 Mflops.
Als operatorconsole werd een Apollo/Domain Unix-werkstation gebruikt, die via een local area verbinding de goede werking van de ETA-10P controleerde.
Op 4 januari 1989 gingen de twee systeemprogrammeurs van TNO-FEL naar Minneapolis om daar het ETA Unix System V-operating systeem middels cursussen te leren kennen. Het FEL zou het derde ETA-systeem krijgen dat met Unix System V uitgerust was. De andere ETA-systemen draaiden met het ETA Operating System EOS, een één-op-één kopie van het CYBER 20x-operating systeem VSOS.
Gedurende de cursusperiode van 2.5 week was de gemiddelde buitentemperatuur -20 C. Op een gegeven moment bereikte de temperatuur de -40 C, een aparte ervaring waarbij door de extreme droogte de elektrostatische ontladingen niet van de lucht waren.
In de ETA Systems fabriek, die vlak naast een spooremplacement lag, konden wij het maakproces van CPU-borden nabij aanschouwen. De eerder genoemde precisieboorgaatjes konden alleen geboord worden als er geen trein langs kwam. Met behulp van seismometers op enige afstand werd het op dikke rubberblokken gestabiliseerde boorsysteem tijdig uitgeschakeld.
Installatie en afgebroken acceptatie ETA-10P
Eind februari 1989 werd de ETA-10P, “PIPER 23”, op TNO-FEL geïnstalleerd. De eerste acceptatietesten wezen op enige stabiliteitsproblemen in de ß-versie van het Unix-operating systeem. In afwachting van de nog af te leveren productierelease van het UNIX besturingssysteem, werd gewerkt aan het ontwikkelen van operationele procedures en het draaien van enkele grote rekenprogramma’s. Enkele programma’s van het PML (Reagas, Burnex) draaiden op de ETA-10P drie keer zo snel als op een CRAY-XMP.
Op 17 april 1989, 8 uur Minneapolistijd, werd in een persbericht bekend gemaakt dat Control Data de verdere ontwikkelingen bij ETA Systems zou stoppen. De reden was de noodzaak van het concern om een betere financiële positie te bereiken, iets waar ETA Systems voorlopig nog geen bijdrage aan zou kunnen leveren. Een persoonlijk relaas van de beëindiging door een van de managers staat op het web. Ook het “ETA Yearbook” is op het web aanwezig met een verzameling van persoonlijke herinneringen van ETA personeel opgetekend in 1994, vijf jaar na de sluiting.
Alle acceptatiewerkzaamheden werden onmiddellijk gestaakt. Door het TNO werd besloten om het contract met Control Data te ontbinden en binnen het bestaande lease-contract te kijken naar een vervangend systeem. In juni 1989 werden benchmarks uitgevoerd op het Alliant FX/4 systeem van TNO Grondwaterverkenning en een Alliant FX/40-systeem met vier CPU’s bij Alliant Nederland. Ook werd de FEL-benchmarkprogramma’s uitgevoerd op een Convex C220-systeem. Naast de technische evaluatie werden beide leveranciers gevraagd om een aantrekkelijke configuratie aan te bieden binnen de financiële ruimte van het bestaande leasecontract. Na vele afwegingen werd besloten tot verwerving van een Convex C220-systeem.
De CONVEX C220: Texaanse technologie
Omdat de door Steven J. Wallach ontworpen Convex systemen een sterk afwijkende architectuur en een op Unix BSD gebaseerd operating systeem hadden van de systemen waaraan het FEL gewend was, werden in juni/juli cursussen bij Convex in Dallas, Texas gevolgd. Bij aankomst was het wat “heet”. Het weerbericht op de TV gaf aan: 40º C met de waarschuwing “een onbeschermd verblijf van meer dan 12 minuten in de zon, kan leiden tot een zonnesteek“. Een ander temperatuur dan enkele maanden daarvoor in Minneapolis!
De CONVEX C230 minisupercomputer
De installatie en acceptatie van het Convex C220 systeem vonden plaats op 1 november 1989. De Convex C220 had twee CPU’s. Iedere CPU had een pieksnelheid van 50 MFLOPs (miljoen floating point operaties/s). Door parallellisatie konden de CPU’s gezamenlijk aan één job gezet worden, waardoor de doorlooptijd verkort werd. Het systeemgeheugen was 256 Mbyte groot. Na een jaar werd de Convex uitgebreid met de derde CPU tot een CONVEX C230. Gelijktijdig werden twee extra schijven geïnstalleerd. In het totaal werd 6 GB aan schijfruimte geïnstalleerd, die via vier controllers “striped” benaderbaar waren.
Op 7 maart 1991 werd het ConvexOS/Secure besturingssysteem geïnstalleerd. TNO was hiervoor volgens afspraak beta-testsite en rapporteerde daarover. Een aantal beveiligingsproblemen met dit systeem werd door ons ter correctie voorgelegd. Daarbij kwam sterk het cultuurverschil naar voren tussen Europees denken en het Amerikaanse denken. Beveiligingsproblemen die door ons geconstateerd werden in de netwerkinterfaceprogrammatuur (telnet, ftp) werden niet opgelost. Het probleem was dat met een PC-programma opeenvolgende user names gegenereerd konden worden; telnet en ftp vertelden of het een valide gebruikersnaam was of niet. Vervolgens kon dit ook met wachtwoorden. Dit was duizenden malen te herhalen zonder dat de hackpogingen gelogd werden. Ook werden de pogingen niet geblokt. Een in die tijd welbekend gat in Unix-systemen dat niet gedicht was in een ‘secure’ besturingssysteem. Het probleem werd niet aangepakt omdat het Trusted Computer System Evaluation Criteria (TCSEC) C2-beveiligingsniveau alleen gedefinieerd was voor een batchomgeving. In onze denkwijze vonden wij dat het probleem ‘in de geest van’ een betere beveiliging ook in een niet-formele ‘beveiligingsklasse-omgeving’ werd opgelost. Overigens is het ftp-beveiligingsgat lang stil gehouden en pas begin 1998 aan de Internet Engineering Task Force (IETF) aangeboden voor correctie van de standaarden.
Uiteindelijk werd in september 1992 deze veilige(r) versie van het Unix besturingssysteem formeel geaccepteerd. In oktober 1992 werd tijdens de Europese Convex gebruikersconferentie te Hamburg door het FEL een presentatie over beveiliging en ConvexOS/Secure gegeven.
Gedurende de gehele lease-periode tot november 1994 is de Convex een zeer goed bezet systeem geweest. De gemiddelde bezettingsgraad over vijf jaar (365 dagen*24 uur) bedroeg 58.5%, de gemiddelde bezettingsgraad overdag bedroeg 63.8%. Er waren perioden bij dat het systeem gedurende enkele maanden voor de volle 100% bezet was. De researchgroepen van PML-TNO genereerden veel werk voor de Convex.