ILLIAC IV

Iliac IV Parallele Computer des Computers Cu

Das ILLIAC IV war der erste Massiv paralleler Computer.[1] Das System wurde ursprünglich für 256 entwickelt 64-Bit schwimmende Punkteinheiten (FPUs) und vier Zentrale Verarbeitungseinheiten (CPUs) In der Lage, 1 Milliarde Operationen pro Sekunde zu verarbeiten.[2] Aufgrund von Budgetbeschränkungen wurde nur ein einzelner "Quadrant" mit 64 FPUs und eine einzelne CPU gebaut. Da die FPUs alle dieselbe Anweisung bearbeiten mussten - HINZUFÜGEN, Sub usw. - In der modernen Terminologie würde das Design als sein Einzelanweisung, mehrere Daten, oder Simd.[3]

Das Konzept des Aufbaus eines Computers mit einer Reihe von Prozessoren kam zu Daniel Slotnick während er als Programmierer auf der Arbeit arbeitet IAS -Maschine 1952. Ein formelles Design begann erst 1960, als Slotnick bei der Arbeit bei Westinghouse Electric und arrangierte Entwicklungsfinanzierung unter einem US-Luftwaffe Vertrag. Als diese Finanzierung im Jahr 1964 endete, wechselte Slotnick in die Universität von Illinois und schloss sich dem an Illinois Automatischer Computer (Iliak) Team. Mit Finanzierung von Agentur für fortschrittliche Forschungsprojekte (ARPA) begannen sie mit dem Design eines neueren Konzepts mit 256 64-Bit-Prozessoren anstelle des ursprünglichen Konzepts mit 1.024 1-Bit-Prozessoren.

Während die Maschine gebaut wurde bei Burroughs, Die Universität begann, eine neue Einrichtung zu bauen, um sie zu unterbringen. Politische Spannungen über die Finanzierung von der US -Verteidigungsministerium führte zum ARPA und der Universität, aus Angst um die Sicherheit der Maschine. Als der erste 64-Prozessor-Quadrant der Maschine 1972 fertiggestellt wurde, wurde es an die geschickt NASA Ames Research Center in Kalifornien. Nach drei Jahren gründlicher Modifikation, um verschiedene Mängel zu beheben, wurde Iliac IV mit dem verbunden Arpanet Für die verteilte Verwendung im November 1975 und der erste von Netzwerk verfügbare Supercomputer, der die besiegt hat Cray-1 um fast 12 Monate.

Mit der Hälfte seiner Konstruktionsgeschwindigkeit lieferte der Ein-Quadrant-ILLIAC IV 50 MFLOP Peak.[4] Machen Sie es zu dieser Zeit zum schnellsten Computer der Welt. Es wird auch zugeschrieben, der erste große Computer zu sein, der verwendet wird Festkörpergedächtnissowie der bisher komplexeste Computer mit über 1 Million Toren.[5] Im Allgemeinen als Misserfolg aufgrund massiver Budgetüberschreitungen angesehen,[5][6] Das Design war maßgeblich an der Entwicklung neuer Techniken und Systeme für die Programmierung paralleler Systeme beteiligt. In den 1980er Jahren wurden mehrere Maschinen, die auf Iliac IV -Konzepten basieren, erfolgreich abgegeben.

Geschichte

Ursprünge

Im Juni 1952, Daniel Slotnick begann an der Arbeit zu arbeiten IAS -Maschine Bei der Institut für fortgeschrittenes Studium (IAS) bei Princeton Universität.[7] Die IAS-Maschine zeigte eine bitparallele Mathematikeinheit, die auf 40-Bit betrieben wurde Wörter.[8] Ursprünglich ausgestattet mit Williams Tube Erinnerung, a magnetische Trommel aus Engineering Research Associates wurde später hinzugefügt. Diese Trommel hatte 80 Tracks, sodass zwei Wörter gleichzeitig gelesen werden konnten, und jeder Track speicherte 1.024 Bit.[9]

Während Slotnik über den Mechanismus der Drum nachdachte, fragte er sich, ob dies der richtige Weg war, um einen Computer zu bauen. Wenn die Bits eines Wortes seriell auf eine einzelne Spur geschrieben würden, anstatt parallel über 40 Spuren zu sein, könnten die Daten direkt aus dem Drum Bit-bit in einen bit-serialen Computer eingespeist werden. Die Trommel würde immer noch mehrere Tracks und Köpfe haben, aber anstatt ein Wort zu sammeln und an einen einzelnen Alu zu senden, würden die Daten auf jedem Track in einem Zeitpunkt ein wenig gelesen und in parallelen Alus gesendet. Dies wäre ein Wort-paralleler, bit-serieller Computer.[7]

Slotnick hob die Idee bei IAS, aber John von Neumann entließ es als "zu viele Röhren" erforderlich.[7] Slotnick verließ die IAS im Februar 1954, um für seine zur Schule zurückzukehren PhD Und die Sache wurde vergessen.[7]

SOLOMON

Nachdem Slotnick seine Doktorarbeit und einige Post-Doc-Arbeiten abgeschlossen hatte, landete er bei IBM. Zu diesem Zeitpunkt wurden zumindest für wissenschaftliche Computing Röhren und Trommeln durch Transistoren ersetzt und ersetzt Kerngedächtnis. Die Idee, dass parallele Prozessoren an verschiedenen Datenströmen einer Trommel arbeiteten, hatte nicht mehr die gleiche offensichtliche Anziehungskraft. Weitere Überlegungen zeigten jedoch, dass Parallelmaschinen in einigen Anwendungen immer noch eine erhebliche Leistung bieten könnten. Slotnick und ein Kollege, John Cocke, schrieben 1958 ein Papier über das Konzept.[10]

Nach kurzer Zeit bei IBM und dann noch ein anderer bei Aeronca Aircraft, Slotnick landete um Westinghouse Luftarmdivision, an der angewendet wurde Radar und ähnliche Systeme.[11] Im Rahmen eines Vertrags von der US-Luftwaffe's RadcSlotnik konnte ein Team aufbauen, um ein System mit 1.024 Bit-Serial-Alus zu entwerfen, das als "Verarbeitungselemente" oder PE bezeichnet wird. Dieses Design erhielt den Namen Solomon danach König Solomon, der beide sehr weise war und 1.000 Frauen hatte.[12]

Die PEs würden Anweisungen eines einzelnen Meisters erhalten Zentrale Verarbeitungseinheit (CPU), die "Steuereinheit" oder Cu. Solomons Cu las Anweisungen aus dem Speicher, entschlüsselt und gibt sie dann zur Verarbeitung an die PE weiter. Jedes PE hatte seinen eigenen Speicher, um Operanden und Ergebnisse, das PE -Speichermodul oder PEM zu halten. Die Cu könnte über einen speziellen Speicher auf den gesamten Speicher zugreifen Speicherbus, während die PE nur auf ihren eigenen PEM zugreifen konnten.[13] Um die Ergebnisse einer PE als Eingaben in einem anderen zu ermöglichen, verband ein separates Netzwerk jedes PE mit seinen acht nächsten Nachbarn.[14]

Es wurden mehrere Testbettsysteme konstruiert, darunter ein 3-mal-3-System (9 PE) und ein 10-mal-10-Modell mit vereinfachtem PES. In dieser Zeit wurden komplexere PE-Designs einiger Überlegungen berücksichtigt, was zu einem 24-Bit-Parallelsystem wurde, das in einer Anordnung von 256 mal 32 organisiert wird. Ein einzelnes PE, das dieses Design verwendete US -Verteidigungsministerium wurde bei einem Unfall getötet und es gab keine weitere Finanzierung.[15]

Slotnik, der sich weiterentwickelte, näherte sich Livermore, der zu dieser Zeit an der Spitze der Supercomputerkäufe stand. Sie waren sehr an dem Design interessiert, überzeugten ihn aber überzeugt, das aktuelle Design zu verbessern Fixpunkt Mathematikeinheiten zu wahr schwimmender Punkt, was zum Solomon führte.2 Design.[16]

Livermore würde die Entwicklung nicht finanzieren, stattdessen boten sie einen Vertrag an, in dem sie die Maschine mieten würden, sobald sie abgeschlossen war. Westinghouse Management hielt es für zu riskant und schließt das Team. Slotnik verließ Westinghouse und versuchte zu finden Risikokapital das Projekt fortzusetzen, aber fehlgeschlagen. Livermore würde später die auswählen CDC Star-100 Für diese Rolle war CDC bereit, die Entwicklungskosten zu übernehmen.[17]

ILLIAC IV

Als Solomon endete, trat Slotnick dem ILIAC-Team (Illinois Automatic Computer Design) an der Universität von Illinois in Urbana-Champaign bei. Illinois hatte große Computer für das US -Verteidigungsministerium und die gebaut und gebaut Agentur für fortschrittliche Forschungsprojekte (ARPA) Seit 1949 unterzeichnete die Universität 1964 einen Vertrag mit ARPA, um die Bemühungen zu finanzieren, die als Iliac IV bekannt wurde, da es der vierte Computer war, der an der Universität entworfen und gegründet wurde. Die Entwicklung begann 1965 und ein Erstpassdesign wurde 1966 abgeschlossen.[18]

Im Gegensatz zum Bit-serialen Konzept von Solomon wurden in Iliac IV die PEs auf volle 64-Bit Tore und 2048 Wörter von Dünnfilmspeicher.[19] Die PES hatten fünf 64-Bit-Register mit jeweils einen besonderen Zweck. Eines davon, RGR, wurde verwendet, um Daten an benachbarte PES zu kommunizieren und einen "Hopfen" pro Taktzyklus zu bewegen. Ein anderes Register, RGD, gab an, ob PE derzeit aktiv war oder nicht. "Inaktive" PES konnten nicht auf Speicher zugreifen, aber sie würden die Ergebnisse mit dem RGR an benachbarte PES weitergeben.[14] Die PEs wurden so konzipiert, dass sie als einzelne 64-Bit-FPU, zwei 32-Bit-FPUs oder acht 8-Bit-Festpunktprozessoren arbeiten.[19]

Anstelle von 1.024 PEs und einer einzigen Cu hatte das neue Design insgesamt 256 PES in vier 64-Pe-Quadranten mit jeweils eine eigene Cu angeordnet. Die Cu waren auch 64-Bit-Designs mit vierundsechzig 64-Bit Register und weitere vier 64-Bit-Akkumulatoren. Das System könnte als vier separate 64-PE-Maschinen, zwei 128-PE-Maschinen oder eine einzelne 256-PE-Maschine ausgeführt werden. Dies ermöglichte es dem System, an unterschiedlichen Problemen zu arbeiten, wenn die Daten zu klein waren, um das gesamte 256-PE-Array zu fordern.[19]

Basierend auf einem 25-MHz-UhrGflops.[20] Dies machte es viel schneller als jede Maschine der Welt; der Zeitgenosse CDC 7600 hatte einen Taktzyklus von 27,5 Nanosekunden oder 36 MIPs,[21] Obwohl es aus einer Vielzahl von Gründen im Allgemeinen eine Leistung näher an 10 MIPs bot.[22][a]

Um die Maschine zu unterstützen, wurde eine Erweiterung der digitalen Computerlaborgebäude gebaut.[23][24] Die Probenarbeiten an der Universität wurden hauptsächlich darauf abzielen, die PES effizient mit Daten zu füllen, wodurch der erste "Spannungstest" in der Computerentwicklung durchgeführt wurde. Um dies so einfach wie möglich zu machen, mehrere neue Computersprachen wurden erstellt; Ivtran und ruhig wurden parallelisierte Versionen von Forranund Glypnir war eine ähnliche Konvertierung von Algol. Im Allgemeinen lieferten diese Sprachen Unterstützung für das Laden von Datenarrays "über die PES", die parallel ausgeführt werden sollen, und einige unterstützten sogar die Auflösung von Schleifen in Array -Operationen.[25]

Konstruktion, Probleme

Anfang 1966 wurde von der Universität eine Anfrage nach Vorschlägen verschickt, um nach Industriepartnern zu suchen, die am Aufbau des Designs interessiert waren. Im Juli gingen sieben Antworten ein, antworteten sieben und von diesen drei wurden ausgewählt.[26] Einige der Antworten, einschließlich Steuerungsdaten, versuchte, sie in a zu interessieren Vektorprozessor Design stattdessen, aber da diese bereits entworfen wurden, war das Team nicht daran interessiert, einen anderen zu bauen. Im August 1966,[b] Achtmonatsverträge wurden angeboten RCA, Burroughs und Univac auf den Bau der Maschine zu bieten.[19]

Burroughs gewann schließlich den Vertrag, nachdem er sich mit zusammengetan hatte Texas Instrumente (Ti). Beide boten neue technische Fortschritte an, die ihr Angebot am interessantesten machten. Burroughs bot an, eine neue und viel schnellere Version von zu bauen Dünnfilmspeicher was die Leistung verbessern würde. Ti bot an, 64-polige zu bauen Emitter-gekoppelte Logik (ECL) integrierte Schaltkreise (ICs) mit 20 Logik -Tore jeder.[c] Zu dieser Zeit verwendeten die meisten ICs 16-polige Pakete und hatten zwischen 4 und 7 Toren. Die Verwendung von TIs ICs würde das System viel kleiner machen.[19]

Burroughs lieferten auch die Spezialisierung Laufwerke, der einen separaten stationären Kopf für jede Strecke enthielt und Geschwindigkeiten von bis zu 500 Mbit/s bieten und ungefähr 80 gespeichert haben Mb pro 36 "Scheibe. Sie würden auch einen Burroughs liefern B6500 Mainframe fungiert als Front-End-Controller, laden Sie Daten aus der Sekundärspeicherung und erledigen andere Haushaltsaufgaben. Mit dem B6500 verbunden war ein optisches Aufnahmungsmedium der dritten Party-Laser, ein Schreibsystem, das bis zu 1 gespeichert warTbit auf dünnem Metallfilm, überzogen auf einem Streifen aus Polyesterblech, der von einer rotierenden Trommel getragen wird. Der Bau des neuen Designs begann im Great Valley Lab von Burroughs.[13] Zu dieser Zeit wurde geschätzt, dass die Maschine Anfang 1970 geliefert wird.[27]

Nach einem Jahr der Arbeit an der ICS kündigte TI an, dass sie die 64-poligen Entwürfe nicht bauen konnten. Die komplexere interne Verkabelung verursachte Übersprechen In der Schaltung, und sie baten um ein weiteres Jahr, um die Probleme zu beheben. Stattdessen entschied sich das ILLIAC-Team, die Maschine auf der Grundlage der verfügbaren 16-poligen ICs neu zu gestalten. Dadurch musste das System langsamer laufen und einen 16 -MHz -Takt anstelle des ursprünglichen 25 -MHz -Takts verwendeten.[28] Die Änderung von 64-polig auf 16-polige kostete das Projekt etwa zwei Jahre und Millionen von Dollar. Ti konnte das 64-polige Design nach etwas mehr als einem weiteren Jahr zum Laufen bringen und begann, sie auf dem Markt anzubieten, bevor IlIC abgeschlossen war.[28]

Infolge dieser Änderung das Individuum PC -Boards wuchs etwa 2,5 cm quadratisch auf 15 cm × 25 cm auf etwa 6 x 10 Zoll. Diese Bemühungen von Burroughs, einen Dünnfilmspeicher für die Maschine zu erzeugen, da der Speicher nicht mehr genügend Platz für den Speicher in den Schränken des Designs gab. Versuche, die Größe der Schränke zu erhöhen, um Platz für den Speicher zu schaffen, verursachte schwerwiegende Probleme bei der Signalausbreitung.[29] Slotnick befragte den potenziellen Ersatz und wählte einen Halbleiterspeicher aus Fairchild Semiconductor, eine Entscheidung, die von Burroughs so abgelehnt wurde, dass eine vollständige Überprüfung von ARPA folgte.[19]

1969 führten diese Probleme in Kombination mit den daraus resultierenden Kostenüberschreitungen aus den Verzögerungen zu der Entscheidung, nur einen einzelnen 64-Pe-Quadranten aufzubauen.[19] Dadurch wird die Geschwindigkeit der Maschine auf etwa 200 Mflops beschränkt.[30] Zusammen kosten diese Änderungen das Projekt drei Jahre und 6 Millionen US -Dollar.[19] Bis 1969 gab das Projekt 1 Million Dollar pro Monat aus und musste aus dem ursprünglichen Illandteam herausgedreht werden, das in ihrer Opposition gegen das Projekt zunehmend lautstark war.[31]

Wechseln Sie nach Ames

Bis 1970 wurde die Maschine schließlich zu einem angemessenen Preis gebaut und wurde in etwa einem Jahr für die Lieferung vorbereitet. Am 6. Januar 1970, Die tägliche IlliniDie Studentenzeitung behauptete, der Computer würde zur Gestaltung von Atomwaffen verwendet.[32] Im Mai die Kent State Shootings fand statt, und Antikriegsgewalt brach an den Universitätsgeländen aus.[31]

Slotnick wurde gegen die Verwendung der Maschine für klassifizierte Forschungsergebnisse und kündigte an, dass alle Verarbeitung auf der Maschine öffentlich veröffentlicht werden würde, solange es auf den Universitätsgründen stattfand. Er wurde auch zunehmend besorgt darüber, dass die Maschine von den radikaleren Studentengruppen angegriffen wird.[31] Eine Position, die klug schien, nachdem sich die örtlichen Studenten dem angeschlossen hatten 9. Mai 1970 landesweiter Studentenstreik durch Erklärung eines "Tags der Illiaction",[33] und vor allem die 24. August Bombenanschlag des Mathematikgebäudes am Universität von Wisconsin-Madison.[34]

Mit der Hilfe von Hans Mark, der Direktor der NASA Ames Research Center in dem, was wurde Silicon ValleyIm Januar 1971 wurde die Entscheidung getroffen, die Maschine eher an Ames als an die Universität zu liefern. Befindet sich aktiv US Navy Basis und durch die geschützt US -MarinesDie Sicherheit wäre kein Problem mehr. Die Maschine wurde schließlich im April 1972 an AMES geliefert und in der zentralen Computereinrichtung im Gebäude N-233 installiert.[35] Zu diesem Zeitpunkt dauerte es mehrere Jahre zu spät und weit über dem Budget zu einem Gesamtpreis von 31 Millionen US-Dollar, fast vierfache der ursprünglichen Schätzung von 8 Millionen US-Dollar für die komplette 256-PE-Maschine.[31][2][d][e]

Die NASA beschloss auch, die B6500 Front-End-Maschine durch a zu ersetzen PDP-10, die bei Ames gemeinsam verwendet wurden und es viel einfacher machen würden, sich mit dem Arpanet zu verbinden.[36] Dies erforderte die Entwicklung neuer Software, insbesondere Compiler, auf der PDP-10. Dies führte zu weiteren Verzögerungen bei der Online -Bringung des Geräts.[31]

Der Iliac IV wurde mit Sitz in Southfield, MI, einem Timesharing- und Remote -Job -Unternehmen (Remote Jobing), das kürzlich vom Konglomerat, der Lear Siegler Corporation, übernommen, von ACTS Computing Corporation verwaltet. Der DOD beauftragte mit Akten unter Kostenzusammenzügen zuzüglich 10% Vertrag. Diese ungewöhnliche Vereinbarung war auf die Einschränkung zurückzuführen, dass kein Regierungsangestellter mehr als ein Kongressperson und viele IIRIAC -IV -Mitarbeiter mehr als diese Grenze erhoben werden konnte. Dr. Mel Pirtle mit einem Hintergrund der University of California, Berkeley und der Berkeley Computer Corporation (BCC) war als Direktor der Iliac IV verlobt.

Es funktioniert

Iliac IV -Verarbeitungseinheit ausgestellt in Computergeschichte Museum.

Als die Maschine ankam, konnte sie nicht zur Arbeit gemacht werden. Es litt unter allen möglichen Problemen, von Cracking PCBs bis schlecht Widerstände, zur Verpackung der Ti -ICs sehr empfindlich gegenüber Feuchtigkeit. Diese Probleme wurden langsam behandelt, und bis zum Sommer 1973 konnten die ersten Programme auf dem System betrieben werden, obwohl die Ergebnisse sehr fraglich waren. Ab Juni 1975 begann ein konzertierter viermonatiger Aufwand, der unter anderem 110.000 Widerstände ersetzte, Teile neu verdrahteten, um Probleme mit Ausbreitungsverzögerung zu beheben, die Filterung der Stromversorgung zu verbessern und eine weitere Reduzierung der Taktrate auf 13 MHz zu verringern. Am Ende dieses Prozesses funktionierte das System endlich ordnungsgemäß.[31][2]

Von da an lief das System Montagmorgen bis Freitagnachmittag und lieferte den Benutzern 60 Stunden Zeit, aber es erforderte 44 Stunden geplante Ausfallzeiten.[2] Trotzdem wurde es zunehmend verwendet, als die NASA -Programmierer Wege lernten, um Leistung aus dem komplexen System herauszuholen. Die Leistung war zunächst düster. CDC 7600.[37] Im Laufe der Zeit verbesserte sich dies, insbesondere nachdem Ames -Programmierer ihre eigene Version von geschrieben haben Forran, CFD, und lernte, wie man I/O in die begrenzten PEMs parallele. Bei Problemen, die parallelisiert werden konnten, war die Maschine immer noch der schnellste der Welt, was die CDC 7600 um zwei bis sechs Mal übertrifft und im Allgemeinen bis 1981 die schnellste Maschine der Welt zugeschrieben wird.[31]

Am 7. September 1981, nach fast 10 Jahren Operation, wurde der Iliac IV ausgeschaltet.[38] Die Maschine wurde 1982 offiziell stillgelegt, und die fortschrittliche Computerabteilung der NASA endete damit. Eine Steuereinheit und ein Verarbeitungselement -Chassis von der Maschine ist jetzt im angezeigten Macher ausgestellt Computergeschichte Museum In Mountain View, weniger als eine Meile von seinem Betriebsort entfernt.[39]

Nachwirkungen

Iliac war sehr spät, sehr teuer und erreichte nie das Ziel, 1 GFLOP zu produzieren. Es wurde allgemein als Misserfolg angesehen, selbst von denen, die daran gearbeitet haben; Einer erklärte einfach, dass "jeder unparteiische Beobachter Iliac IV als Misserfolg im technischen Sinne betrachten muss."[40] In Bezug auf das Projektmanagement wird es allgemein als Misserfolg angesehen, um seine Kostenschätzungen um viermal zu liefern und jahrelange Abhilfemaßnahmen zu erfordern, damit es funktioniert. Wie Slotnik selbst später ausdrückte:

Ich bin bitter enttäuscht und sehr erfreut ... erfreut und bestürzt. Erfreut darüber, dass die Gesamtziele am Ende gut herauskamen. Bestürzt, dass es zu viel gekostet, zu lange gedauert, nicht genug und nicht genug Leute benutzen.[41]

Später analysiert jedoch, dass das Projekt sowohl absichtlich als auch unbeabsichtigt mehrere langlebige Auswirkungen auf den Computermarkt als Ganzes hatte.[42]

Zu den indirekten Effekten gehörte die schnelle Aktualisierung des Halbleitergedächtnisses nach dem ILLIAC -Projekt. Slotnick erhielt viel Kritik, als er sich entschied Fairchild Semiconductor Um die Gedächtnis -ICs zu produzieren, gab es zu der Zeit, als die Produktionslinie ein leerer Raum war und das Design nur auf Papier vorhanden war.[43] Nach drei Monaten intensiver Anstrengung wurde Fairchild jedoch ein funktionierendes Design produziert en masse. Als Slotnick später kommentierte: "Fairchild hat großartige Arbeit geleistet, um unsere Kastanien aus dem Feuer zu ziehen. Die Erinnerungen von Fairchild waren hervorragend und ihre Zuverlässigkeit bis heute ist einfach unglaublich gut."[29] Es wird angenommen Kerngedächtnis und verwandte Systeme wie Dünnfilm.[29]

Ein weiterer indirekter Effekt wurde durch die Komplexität des Leiterplatten (PCB) oder Module. Bei der ursprünglichen 25 -MHz -Designgeschwindigkeit, Impedanz In der Bodenverdrahtung erwies sich als ernstes Problem und verlangte, dass die PCB so klein wie möglich sind. Mit zunehmender Komplexität mussten die PCB immer mehr Schichten hinzufügen, um zu vermeiden, dass größer wird. Schließlich erreichten sie 15 Schichten tief, was weit über die Fähigkeiten der Entwürfe hinausging. Das Design wurde letztendlich mit neuen automatisierten Design -Tools abgeschlossen, die von einem Subunternehmer bereitgestellt wurden, und das vollständige Design erforderte zwei Jahre Computerzeit für einen Burroughs -Mainframe. Dies war ein großer Schritt nach vorne in Computer unterstütztes Designund bis Mitte der 1970er Jahre waren solche Werkzeuge an der Tagesordnung.[44]

ILLIAC führte auch zu großen Untersuchungen zum Thema paralleler Verarbeitung, das weitreichende Auswirkungen hatte. In den 1980er Jahren, wobei der Preis von Mikroprozessoren nach Moore's Law fiel, wurden eine Reihe von Unternehmen geschaffen Mimd (Mehrere Anweisungen, mehrere Daten) Um noch mehr parallele Maschinen zu erstellen, mit Compilern, die die Parallelität besser nutzen könnten. Das Denkmaschinen CM-5 ist ein hervorragendes Beispiel für das MIMD -Konzept. Es war das bessere Verständnis der Parallelität gegenüber IlIC, die zu den verbesserten Compilern und Programmen führte, die diese Entwürfe nutzen konnten. Wie ein Iliac -Programmierer es ausdrückte: "Wenn jemand einen schnellen Computer aus vielen Mikroprozessoren baut, wird Iliac IV im breiten Schema der Dinge sein."[45]

Die meisten Supercomputer der Ära verfolgten einen weiteren Ansatz für eine höhere Leistung mit einer einzigen sehr hohen Geschwindigkeit Vektorprozessor. Ähnlich wie bei IlIC in gewisser Weise haben diese Prozessorentwürfe viele Datenelemente in einen einzelnen benutzerdefinierten Prozessor anstelle einer großen Anzahl von spezialisierten geladen. Das klassische Beispiel für dieses Design ist das Cray-1, die eine ähnliche Leistung wie die ILLIAC hatte. Infolgedessen gab es mehr als ein kleines "Gegenreaktionen" gegen das Illanddesign, und für einige Zeit suchte der Supercomputermarkt massiv parallele Designs mit Verachtung, selbst wenn sie erfolgreich waren. Wie Seymour Cray Bekannt witzelte: "Wenn Sie ein Feld pflügen würden, welche würden Sie lieber verwenden? Zwei starke Ochsen oder 1024 Hühner?"[46]

Beschreibung

Physische Anordnung

Jeder Quadrant der Maschine war 10 Fuß (3 m) hoch, 2,4 m tief und 50 Fuß (15 m) lang.[47] Neben dem Quadranten angeordnet war seine Input-Output (I/O) System, dessen Festplattensystem 2,5 gespeichert istGib und konnte Daten mit 1 Milliarde Lesen lesen und schreibenBits pro Sekundezusammen mit dem B6700-Computer, der über die gleiche 1.024-Bit-breite Schnittstelle wie das Festplattensystem an die Maschine angeschlossen wurde.[48]

Die Maschine bestand aus einer Reihe von Trägerchassis, die eine Reihe von kleinen Modulen hielten. Die meisten davon waren die Verarbeitungseinheiten (PUS), die die Module für ein einzelnes PE, sein PEM und die Speicherlogikeinheit enthielten, die die Adressübersetzung und die I/O -Adresse bearbeitete. Der Eiter waren identisch, so dass sie nach Bedarf ersetzt oder neu angeordnet werden konnten.[49]

Prozessordetails

Jede Cu hatte ungefähr 30 bis 40.000 Tore.[50] Die Cu hatte sechzehn 64-Bit-Register und einen separaten 64-Bit-Slot 64-Bit "Scratchpad", LDB. Es gab vier Akkumulatoren, AC0 bis AC3, einen Programmzähler ILR und verschiedene Kontrollregister. Das System hatte einen kurzen Anweisung Pipeline und implementiert Anweisung schauen nach vorne.[51]

Die PES hatten ungefähr 12.000 Tore.[50] Es enthielt vier 64-Bit-Register mit einem Akkumulator A, einem Operandenpuffer B und einem sekundären Scratchpad S. Das vierte R wurde verwendet, um Daten von den anderen PES zu übertragen oder zu empfangen.[52] Die PES verwendeten a Carry-Lookahead Addierer, a Hauptdetektor für boolesche Operationen und a Fassschieber. 64-Bit-Ergänzungen dauerten etwa 200 Ns und Multiplikationen etwa 400 ns. Die PE waren mit einer privaten Speicherbank verbunden, dem PEM, das 2.048 64-Bit-Wörter enthielt. Die Zugangszeit war in der Größenordnung von 250 ns[53] Die PES verwendeten a Architektur laden/store.[54]

Das Befehlssatz (ISA) enthielt zwei separate Anweisungssätze, eine für die Cu (oder eine Einheit darin, Advast) und eine für die PES. Die Anweisungen für die PES wurden nicht dekodiert und stattdessen direkt an das FinST -Register gesendet, um an die PES zu verarbeiten. Die Advast -Anweisungen wurden dekodiert und in die Verarbeitungspipeline der CU eingegeben.[55]

Logische Anordnung

Jeder Quadrant enthielt 64 pes und eine cu. Die CU hatte Zugang zum gesamten E/A -Bus und konnte den gesamten Speicher der Maschine ansprechen. Die PES konnten nur auf ein eigenes lokales Geschäft, das PEM, von 2.048 64-Bit-Wörtern zugreifen. Sowohl die PES als auch die CU könnten Last- und Speichervorgänge verwenden, um auf das Festplattensystem zuzugreifen.[48]

Die Schränke waren so groß, dass 240 erforderlich warenns Damit Signale von einem Ende zum anderen reisen können. Aus diesem Grund konnte die Cu nicht zur Koordinierung von Aktionen verwendet werden. Stattdessen war das gesamte System mit allen Vorgängen in der PES-Synchron-Synchron, die garantiert die gleiche Zeit in Anspruch nehmen, unabhängig von den Operanden. Auf diese Weise konnte die CU sicher sein, dass die Operationen vollständig waren, ohne auf Ergebnisse oder Statuscodes warten zu müssen.[47]

Um die Leistung von Operationen zu verbessern, bei denen die Ausgabe der Ergebnisse eines PE als Eingabe für ein anderes PE verwendet werden musste, wurden die PES direkt an ihre Nachbarn sowie die achtstufigen Entfernungen angeschlossen - beispielsweise wurde PE1 direkt angeschlossen an pe0 und pe2 sowie pe9 und pe45. Die Acht-Away-Verbindungen ermöglichten einen schnelleren Transport, wenn die Daten zwischen weiteren entfernten PES erforderlich waren.[48] Jede Datenverschiebung bewegte sich in einem einzigen 125 NS-Taktzyklus um 64 Wörter.[47]

Das System verwendete ein Ein-Adress-Format, bei dem die Anweisungen die Adresse eines der Operanden und der andere Operand in den PE enthielten Akkumulator (das A -Register). Die Adresse wurde an den PE über einen separaten "Sendung" -Bus gesendet. Abhängig von der Anweisung kann sich der Wert im Bus auf einen Speicherort im PEM des PE, einen Wert in einem der PE -Register oder eine numerische Konstante beziehen.[56]

Da jeder PE seinen eigenen Speicher hatte, enthielt das System ein Anweisungsformat und der Cus den gesamten Adressraum, das System enthielt eine Indexregister (X) um die Basisadresse auszugleichen. Dies ermöglichte beispielsweise denselben Befehlsstrom, an Daten zu arbeiten, die nicht an denselben Stellen in verschiedenen PES ausgerichtet waren. Das übliche Beispiel wäre eine Reihe von Daten, die in verschiedene Stellen in den PEMs geladen wurden, die dann durch Einstellen des Index in den verschiedenen PES einheitlich gemacht werden können.[56]

Geäst

Bei herkömmlichen Computerkonstruktionen werden Anweisungen nach dem anderen in die CPU geladen, wenn sie aus dem Speicher gelesen werden. Normalerweise, wenn die CPU die Verarbeitung einer Anweisung abschließt, die Programm zähler (PC) wird durch ein Wort erhöht und die nächste Anweisung wird gelesen. Dieser Prozess wird durch unterbrochen von Geäst, was dazu führt, dass der PC je nach Test zu einem von zwei Standorten springt, z. B. ob eine bestimmte Speicheradresse einen Wert ungleich Null enthält. Bei der Ilikatdesign würde jeder PE diesen Test auf unterschiedliche Werte anwenden und daher unterschiedliche Ergebnisse haben. Da diese Werte für die PE privat sind, müssten die folgenden Anweisungen basierend auf einem Wert geladen werden, der nur die PE kannte.[57]

Um zu vermeiden, dass die Verzögerungen, die die PE -Anweisungen neu laden, verursachen würden, lud der Ilriak die PEMs mit den Anweisungen auf beiden Seiten des Zweigs. Logische Tests haben den PC nicht geändert. Stattdessen setzen sie "Modus -Bits", die dem PE mitgeteilt haben, ob die nächste arithmetische Anweisung ausgeführt werden soll oder nicht. Um dieses System zu verwenden, wurde das Programm so geschrieben, dass einer der beiden möglichen Anweisungsströme dem Test folgte und mit einer Anweisung zum Umkehrten der Bits endete. Der Code für den zweiten Zweig würde dann folgen und mit einer Anweisung enden, um alle Bits auf 1 festzulegen.[57]

Wenn der Test den "ersten" Zweig ausgewählt hätte, würde dieser PE wie gewohnt fortgesetzt. Wenn es das Ende dieses Codes erreichte, würde der Modus -Operator -Befehl die Modus -Bits und von da an diese PE weitere Anweisungen ignorieren. Dies würde fortgesetzt, bis es das Ende des Codes für den zweiten Zweig erreicht hat, wo der Modus Reset -Befehl das PE wieder einschalten würde. Wenn der Test eines bestimmten PE dazu führte, dass der zweite Zweig durchgeführt wurde, würde er stattdessen die Modus -Bits festlegen, um weitere Anweisungen zu ignorieren, bis er das Ende des ersten Zweigs erreicht hat, wobei der Modusbetreiber die Bits umdrehen und den zweiten Zweig veranlassen würde, mit der Verarbeitung zu beginnen machte sie alle am Ende dieses Zweigs wieder ein.[57]

Da die PES in den Modi 64-, 32- und 8-Bit-Modi arbeiten können, hatten die Modus-Flags mehrere Bits, sodass die einzelnen Wörter ein- oder ausgeschaltet werden konnten. Zum Beispiel, in dem Fall, als der PE im 32-Bit-Modus arbeitete, könnte eine "Seite" des PE den Test wahr sein, während die andere Seite falsch war.[57]

Terminologie

  • CU: Steuereinheit
  • CPU: Zentrale Verarbeitungseinheit
  • ISA: Anleitungsarchitektur
  • MAC: Multiplizieren und akkumuliert
  • PC: Programmzähler
  • PE: Verarbeitungselement
  • PEM: Verarbeitungselement -Speichermodul
  • PU: Verarbeitungseinheit

Siehe auch

Anmerkungen

  1. ^ Beachten Sie, dass der Begriff "Flop" zu diesem Zeitpunkt nicht weit verbreitet war, MIPS und Flops synonym.
  2. ^ Chen sagt Juli.[26]
  3. ^ Später bekannt als Integration mit mittlerer Maßstab.
  4. ^ Slotnick und andere haben behauptet, die ursprüngliche Schätzung von 8 Millionen US -Dollar sei eine ad hoc Nummer, die die gleiche wie die Geldbörse in der war Clay-Liston-Kampf.[2]
  5. ^ Es wurde während einer Zeit historisch hoher Inflationsraten entwickelt, und zumindest ein Teil des Preiserhöhung ist auf diese Erhöhungen zurückzuführen.[2]

Verweise

Zitate

  1. ^ Hord 1982, p. 1.
  2. ^ a b c d e f Hord 1982, p. 14.
  3. ^ Hord 1982, p. 5.
  4. ^ Hockney & Jesshope 1988, p. 24.
  5. ^ a b Hord 1982, p. 8.
  6. ^ Hockney & Jesshope 1988, p. 25.
  7. ^ a b c d Slotnick 1982, p. 20.
  8. ^ Ware, W.H. (10. März 1953). Geschichte und Entwicklung des IAS -Computers (PDF) (Technischer Bericht). Rand.
  9. ^ Mackenzie 1998, p. 295.
  10. ^ Slotnick 1982, p. 21.
  11. ^ Slotnick 1982, S. 21–22.
  12. ^ Mackenzie 1998, p. 105.
  13. ^ a b Bouknight et al. 1972, p. 371.
  14. ^ a b Slotnick 1982, p. 23.
  15. ^ Slotnick 1982, p. 24.
  16. ^ Mackenzie 1998, p. 118.
  17. ^ Mackenzie 1998, p. 119.
  18. ^ Slotnick 1982, p. 25.
  19. ^ a b c d e f g h Slotnick 1982, p. 26.
  20. ^ Barnes et al. 1968, p. 746.
  21. ^ Levesque, John; Williamson, Joel (2014). Ein Leitfaden für Forran über Supercomputer. Akademische Presse. p. 14.
  22. ^ Parkinson, Dennis (17. Juni 1976). "Computer von den Tausend". Neuer Wissenschaftler. p. 626.
  23. ^ Hord 1982, p. 9.
  24. ^ Leetaru, Kalev (2010). "Digital Computer Laboratory". UI -Geschichten/Universität von Illinois. {{}}: Fehlen oder leer |url= (Hilfe)
  25. ^ Hord 1982, p. fünfzehn.
  26. ^ a b Chen 1967, p. 3.
  27. ^ Barnes et al. 1968, p. 747.
  28. ^ a b Hord 1982, p. 11.
  29. ^ a b c Falk 1976, p. 67.
  30. ^ Burroughs 1974, p. 3.
  31. ^ a b c d e f g Slotnick 1982, p. 27.
  32. ^ Falk 1976, p. 65.
  33. ^ "Byte der Geschichte: Computer an der Universität von Illinois". Universität von Illinois. März 1997. archiviert von das Original am 10. Juni 2007.
  34. ^ "Sterling Hall Bombing von 1970". Universität von Wisconsin-Madison.
  35. ^ "Scientific Information Bulletin" (PDF). Büro für asiatische Büro für Marineforschung. Dezember 1993. p. 51. Archiviert (PDF) Aus dem Original am 24. September 2015. Abgerufen 25. September 2014.
  36. ^ Hord 1982, p. 7.
  37. ^ Falk 1976, p. 69.
  38. ^ "Dieser Tag in der Geschichte: 7. September", Computer History Museum
  39. ^ "ILLIAC IV -Kontrolleinheit". Computergeschichte Museum.
  40. ^ Falk 1976, p. 68.
  41. ^ Hord 1990, p. 9.
  42. ^ Hord 1990, p. 10.
  43. ^ Hord 1990, p. 12.
  44. ^ Hord 1990, p. 13.
  45. ^ Falk 1976, p. 66.
  46. ^ Robbins, Kay; Robbins, Steven (2003). UNIX Systems Programmierung: Kommunikation, Parallelität und Fäden. Prentice Hall. p.582. ISBN 9780130424112.
  47. ^ a b c Burroughs 1974, p. 5.
  48. ^ a b c Burroughs 1974, p. 4.
  49. ^ Burroughs 1974, S. 11–12.
  50. ^ a b Chen 1967, p. 9.
  51. ^ Technische 1968, p. 2.10.
  52. ^ Technische 1968, p. 2.7.
  53. ^ Technische 1968, p. 2.8.
  54. ^ Technische 1968, p. 2.11.
  55. ^ Technische 1968, p. 2.12.
  56. ^ a b Burroughs 1974, p. 7.
  57. ^ a b c d Burroughs 1974, p. 6.

Literaturverzeichnis

Weitere Lektüre

Externe Links