Transputer. Biologen würden sie in eine eigene Gattung stecken. Zur Vorstellung des H1 (Später T9000) ein kurzer Text – die vergleichsweise distanzierte Schreibe zeigt, daß ich noch nicht wirklich infiziert war… aber ein T800 kostete damals auch 800DM.
Hallo, Ehre dem Silizium in der Ehhhhrde….
Eine Prozessorfamilie, die in diesem unseren Brette noch ein ziehmliches Mauerbluemchendarsein fristet, widme ich die heutige Mail: Den TRANSPUTERN. Transputer sind die Schoepfung der Firma INMOS aus England, die sehr Stolz darauf sind, die meisste Erfahrung auf diesem Gebiet zu besitzen. So ist es auch kein Wunder, dass man an INMOS denkt wenn man Transputer hoert. Man wird sowieso seine Schwierigkeiten haben Transputer zu finden, die nicht von INMOS sind. Eigentlich habe ich schon lange vorgehabt diese Prozessoren zu behandeln, doch ich wollte bis zur Veroeffentlichung der neuen Transputerserie H1 von INMOS warten. Diese sind jetzt erschienen und uns steht nichts mehr im Wege.
* THEORIE
Was ist ein Transputer und was macht ihn aus? Rein technisch gesehen ist ein Tarnsputer auch nichts anderes als ein Prozessor, aber eben ein speziller eben. Er unterscheidet sich in einem ganz wesentlichen Punkt von einem “gewoehnlichen” Prozessor. Er ist auf sog. Parallelverarbeitung vor- bereitet, d.h. mehrere Transputer arbeiten in einem Computer. Nun ja, sagst Du jetzt, ist ja nicht so umwerfend, kann ja im Prinzip jeder Computer. Da hast Du Recht..oder auch nicht. Wenn ein Computer im klassischen Sinne arbeitet und mehrere Prozessoren beinhaltet, sind diese ueber einen gemeinsamen Bus verbunden. Dies bedeutet aber, dass jemand da sein muss, der diesen Bus ueberwacht: Ein Buscontroller. Dieser Buscontroller kann aber schon bei zwei “klassischen” Prozessoren (z.B zwei 80386’er) nicht mehr so simpel wie ein normaler (auf einem PC Motherboard) konstruiert sein. Man stelle sich die Datenmengen vor die ueber diesen Bus rauschen. Dies verlang genaustes Timing und ein gut durchdachtes Konzept. Die INMOS’schen Transputer gehen einen anderen Weg. Jeder Transputer hat vier Verbindungskoplungen, sog. Links, mit denen er an einen anderen Transputer “angeschlossen” werden kann. Man kann sich das ganze wie ein Netz aus Quadraten vorstellen (Karo), wobei jede Kreuzung einen Transputer darstellt. Dieses Netz kann im Prinzip unendlich ausgebaut werden. Nun gibt es zwei Theorieen die in solch einem Transputernetz eingesetzt werden koennen. Zum einen die Parallelverarbeitung und zum anderen die Verteilteabarbeitung. Im ersten Fall bekommt jeder Transputer seine ganz private Aufgabe (Apfelmaennchen, Primzahlen, …) und fuehrt diese bis zur kompletten Beendigung aus. Im zweitgenannten Fall wird eine Aufgabe in soviele Teile zerlegt wie Transputer vorhanden sind. Jeder erledigt dann seinen Teil und zum Schluss sind somit alle gleichzeitig fertig und fuer die naechste Aufgabe bereit. Die Parallelverarbeitung wie ich sie geschildert habe (mittlerweile wird die Verteilteabarbeitung ebenso genannt) ergibt wenig Sinn, da eine Aufstockung der Transputerzahl hier viel weniger Leistung ergibt als in der zweiten Moeglichkeit. So entschied auch INMOS indem es die Entwicklung der Betriebssystems HELIOS vorantrieb (eine Art UNIX fuer Transputer nach dem Verteiltenprinzip) und das ur- spruegliche System OCCAM (Eine Kreuzung von Betriebssystem und Sprache die auf die Parallelisierung setzte und es sogar ermoeglicht einzelne Funktionen auf einen Transputer auszulagern. Dies setzte aber ein genaues Wissen um die Zielkonfiguration vorraus.) mehr oder weniger vernach- laessigte. Die Rechnung ist auch durchaus einfach und einsehbar: Ein Transputer der 33 MIPS macht rechnet demzufolge eine Aufgabe mit eben diesen 33 MIPS. Wird eine Aufgabe aber auf zwei verteilt sind es schon 66 MIPS etc. etc.. Wenn wir also angenommen 4 Tasks (Aufgaben) haetten und sich 6 Transputer im Netz befaenden und diese Aufgaben je mit 33 MIPS auf nur je einem Transputer abgearbeitet wuerden, laegen zum einen zwei Transputer brach und 66 MIPS waeren somit ungenutzt. Bei einer verteilten Abarbeitung kaemen im gleichen System 396 MIPS zum Zuge und trotzdem wuerden alle Tasks gleichzeitig laufen, wenn das System unter Helios betrieben wuerde. Die Entscheidung ist also auch durch die Einsicht der Prozessorbrettleser abgesegnet.
Noch ein wenig Historie: Angefangen hat INMOS mit dem T212, einem 16/32 Bit’er mit ca. 4,5 MIPS. Der Nachfolger T400 war dann ein echter 32 Bit’er der ein Leitsung von 10 MIPS auf’s Board brachte. Als letztes Glied der “T-Familie” kam der T800 hinzu, der eine Ueberarbeitung des T400 darstellt und zudem eine FPU und einen 4K Cache in sich verbirgt (macht so ca. 25 MIPS). Kurz vor der Vorstellung des H1 (zu dem spaeter mehr) erblickte der T805 noch das Licht der Welt, der baugleich zum T800 ist aber in einer neuen Technologie gefertigt wurde und noch zusatzliche 4K Cache spendiert bekam. (Anm: Das ist natürlich Quatsch. Keine Ahnung wo ich diese Info her hatte) Er gibt in Bestform 33 MIPS von sich. Anhand dieser doch beeindruckenden MIPS Werte kann man sich die Leistung eines Transputers durchaus vorstellen zumal noch zu erwaehnen bleibt, dass alle Transputer hoechstens mit 8Mhz (extern) getaktet werden, diese dann jedoch intern sehr trickreich durch PLLs auf bis zu 50Mhz “getuned” sind. Trasputer sind trotz ihrer Leistung in einem Punkt empfindlich: I/O. Die Input/Output Arbeit wird deshalb in allen Transputersystemen von normalen CPUs uebrnommen. Z.B. die ATW (Atari Transputer Workstation), die als I/O Einheit einen kompletten Mega ST in sich birgt, der die Transputer- herde zum Einen koordiniert und zum sich Anderen eben um Festplatte Drucker etc. kuemmert. Eine INMOS Neuentwicklung sind auch die sog. TRAMs. TRAMs sind eine Art Transputermodul dar auf dem sich ein Inmos Transputer und bis zu 4MB RAM befinden. Der Vorteil daran: Man kauft ein TRAM-Main- board (Z.B. als PC-Karte) dir vier TRAM Steckplaetze bietet. Diese lassen sich dann mit TRAM nach und nach bestuecken, wobei Transputerart (200er, 400er oder 800er) und Speicherausbau keine Rolle spielt. TRAMs sind genormt und somit eine Sichere Leistungserweiterung. Doch nun zu Inmos neusem Kind: Dem H1.
Laut Hersteller bietet der H1 150MIPS (effektiv eher 60MIPS) und bei Floatingpoint Operationen an die 20 MFLOPS (effektiv 10). Zur Freude der alten Transputerhasen besitzt der H1 volle Kompatibilitaet zum T805 bietet aber einiges mehr, wie zum Beispiel:
* erweiterte Superskalare Mikroarchitektur (Processor Pipeline (= Befehlspuffer, Decoder, Grouper, Workspace Cache, 2 Adressgeneratoren und die Funktionsbloecke FPU und ALU.)
* 32Bit Integer- und 64Bit Fliesskomma-Prozessor
* 16K OnChip Ram, der frei definierbar ist. Zum Beispiel als 8K Daten- und 8K Befehlscache oder als 4K/4K Cache und 8K OnChip Ram etc. etc.. So kann der H1 mit 16K OnChip Ram durchaus als Embeddedcontroller ohne externes RAM auskomen.
* Virtual Channel Processor, der ein virtuelles Kanalmodell und Message- routing unterstuetzt (bei 100MBits/s)
* Speicherschutz (Hardwaremaessig) und Adresstranslation
* interner Datenpfad 4*32 Bit
* interner Adresspfad 4*32 Bit
* 64Bit externes Speicherinterface mit 4GB Adressraum, wobei dies gemischt konfigurierbar aus 4 Speicherarten und Busbreiten ist und bis 16MB DRAM keinerlei Zusatzhardware benoetigt.
* Lauft auf 50Mhz Takt der aus externen 5Mhz durch PLL erzeicht wird.
Zu erwaehnen bleibt nun nur noch, dass Inmos auch noch einen speziellen Routing CoProzessor C104 entwickelt hat, der dem Transputer die Aufgabe abnimmt sich in einem grossen Transputernetz zurechtzufinden. Ein C104 kann bis zu 32 Transputer bedienen und dabei immer noch eine interne Transferrate von 320MBit/s bieten…ein enormer Fortschritt zu den 800KBit/s der “alten” T-Serie. Ein Schmankerl am Rande: Der C104 kann die Transputer bis zu einem Hypercubus 10nter Ordnung verbinden (= 1024 Knoten). Der Preis fuer den H1 liegt noch nicht fest, aber zumindest kann man davon ausgehen, dass die T-Reihe um einiges billiger wird und somit eine Leistungssteigerung per Transputerboard einem Mathe-CoProz. vorzuziehen ist (Vorrausgesetzt man traut sich die Programmierung zu).
mfg AXEL
P.S.: Heute schon Ge-NOP-t ?! (Anm.: “NOP” war ein Zeitschriftenprojekt, welches nie Realisiert wurde)