Ich las das Buch "Die Singularität ist nahe" von Kurzweil und er erwähnte die reversiblen Tore, wie zum Beispiel das Fredkin-Tor . Der Vorteil solcher Tore besteht darin, dass wir den mit der Berechnung verbundenen thermischen Abfall beseitigen können, bei dem Bits einfach in der Wärme verschwinden und für die Berechnung kein Energieeinsatz erforderlich ist. Diese Annahmen lassen diese Tore wie eine Wunderlösung klingen. Die Frage ist also, welche technischen Hürden ihren großflächigen Einsatz noch verhindern.
Ich finde es auch schade, dass ich in meinem Bachelor- und Masterstudium Elektrotechnik an einer deutschen Top-Universität noch nie von diesen Toren gehört habe ...
computer-architecture
Mehdi
quelle
quelle
Antworten:
Ich bin auf keinen Fall ein Experte in diesem Thema, sondern nur aus beiläufiger Lektüre von Wikipedia:
... das klingt sehr realistisch.
Bisher hat noch niemand herausgefunden, wie solche Tore tatsächlich hergestellt werden, sie sind lediglich von theoretischem Interesse. Das könnte erklären, warum Sie noch nie von ihnen gehört haben, da sich das Engineering normalerweise mit der Praxis befasst.
Die Prämisse von Reversible Computing ist, dass beim Verschwinden eines Teils etwas Wärme erzeugt wird. Durch die Verwendung von reversiblen Gattern werden keine Bits mehr angezeigt oder ausgeblendet, sodass die Berechnung mit reversiblen Gattern möglicherweise effizienter ist.
Die theoretische Grenze, die Reversible Computing vorsieht, ist, dass das Löschen von 1 Bit Information mindestens Energie in Wärme erzeugt. Für einen Computer mit einem Toasty 60k Tln2 mit 10 9 Transistoren, die jeweils Bits mit einer Rate von 5 verschwinden lassen60∘C 109 , das entspricht 165G H z Wärmeerzeugung. Das macht nur einen winzigen Anteil ( 1 / 10000 ) eines Energieverbrauch des Computers.16mW 1/10000
Unsere heutigen Computer sind nicht durch die Wärmeentwicklung eingeschränkt, die mit dem Verschwinden von Bits verbunden ist. Sie sind durch die inhärente Ineffizienz beim Bewegen von Elektronen auf winzigen Kupferspuren begrenzt.
quelle
Das Problem bei praktischen reversiblen Toren (Toren, die aus Silizium hergestellt werden können (und wurden)) ist, dass die tatsächlichen Energieeinsparungen linear proportional zu der Geschwindigkeit sind, mit der Sie sie betreiben.
Ich weiß, dass die Forschungsgruppe von Tom Knight am MIT Ende der neunziger Jahre einen kleinen adiabatischen Prozessor hergestellt hat. Die praktische Logikfamilie, die sie entwickelt haben, wird Ladungsrückgewinnungslogik auf zwei Ebenen genannt und kann unter Verwendung von Standard (CMOS) -Fertigungstechniken implementiert werden. Ich glaube, die Arbeit wurde von Michael P. Frank an der Florida State University fortgesetzt. Ein Beispiel für die Arbeit in der Gruppe von Tom Knight ist die folgende Masterarbeit (die einen ziemlich guten Abschnitt über verwandte Arbeiten bis in die frühen 1990er Jahre enthält). Vieri, CJ: Pendulum: A Reversible Computer Architecture , Masterarbeit, MIT EECS-Abteilung, 1995.
Reversible Stromkreise müssen adiabatisch sein (es darf keinen Wärmeaustausch zwischen dem Stromkreis und seiner Umgebung geben), was bedeutet, dass sie jederzeit im Gleichgewicht sein müssen. Für jeden Prozess, der etwas ändern muss, können Sie das Gleichgewicht nur annähern, indem Sie die Änderung so langsam wie möglich durchführen.
Wenn ich mich richtig an meine Thermodynamik erinnere, kann man die Energie einer reversiblen Berechnung beliebig klein machen, aber die minimale Wirkung (Energie mal Zeit) muss eine kleine Konstante sein.
quelle
Die größte Hürde, die ihre Verwendung in großem Maßstab verhindert, ist die gleiche wie für asynchrone Schaltungen und so ziemlich jedes andere nicht standardmäßige Schaltungsdesign: das Moore-Gesetz.
Moores Gesetz ist so etwas wie eine sich selbst erfüllende Prophezeiung geworden; Wie aus dem Tick Tock Release Schedule hervorgeht , sehen die Chiphersteller die Einhaltung des Moore-Gesetzes als Herausforderung an. Aufgrund der Notwendigkeit, Moores Gesetz zu erfüllen, sind wir immer geschickter darin geworden, die Größe von Chips zu verringern, indem wir die Lithografie vorantreiben (und häufig Cheats wie Multipatterning verwenden).
Was hat das alles mit reversiblen Toren zu tun? Unternehmen, die neue Chips drucken möchten, sehen einen einfachen Weg, um die Geschwindigkeit zu erhöhen, indem sie einfach mehr Cache hinzufügen und ihre konventionellen Designs überarbeiten, um diesen Cache besser zu nutzen.
Der Mörder des Besseren ist kein technologischer Hurt; Es ist der Erfolg von gut genug .
quelle
Nützliche Rechenvorrichtungen erfordern eine Rückkopplung, die es ermöglicht, dass ein Schaltungselement eine im Wesentlichen unbegrenzte Anzahl von sequentiellen Berechnungen ausführt. Verwendbare Rückkopplungskreise müssen Abschnitte enthalten, deren Gesamtzahl der Eingänge (einschließlich der von den Ausgängen zurückgeführten und der nicht zurückgeführten) die Anzahl der Ausgänge überschreitet, die an den Eingang zurückgeführt werden (die einzige Möglichkeit, die die Anzahl der Eingänge nicht bietet). Die Anzahl der rückgekoppelten Ausgänge würde nicht überschritten, wenn die Schaltkreise nicht auf äußere Reize reagieren würden. Da perfekt umkehrbare Logikfunktionen nicht mehr Eingänge als Ausgänge haben können, ist es nicht möglich, aus ihnen eine der Rückkopplungsstrukturen zu konstruieren, die für die wiederholte Ausführung nicht-trivialer Rechenaufgaben erforderlich sind. Beachten Sie, dass bei der in heutigen Computern verwendeten CMOS-Technologie eine Rückmeldung erforderlich ist, um sicherzustellen, dass die von Berechnungen in verschiedenen Teilen einer Schaltung gemeldeten Ergebnisse gleichzeitig anderen Teilen zur Verfügung gestellt werden, da die Signale sonst nicht zu dem relativen Zeitpunkt ankommen würden stellen "Informationen" dar, die nicht perfekt weitergegeben werden konnten; Andere Technologien könnten es ermöglichen, dass viele Gatter Signale mit genau der gleichen Rate ausbreiten, während die Reversibilität erhalten bleibt, aber ich kenne keine praktische Technologie dafür.
Beachten Sie, dass es aus CS-Sicht trivial ist, einen Rechenprozess umkehrbar zu machen, wenn ein anfänglich leeres Speichermedium vorhanden ist, dessen Größe im Wesentlichen proportional zur Anzahl der Schritte multipliziert mit der Menge des Zustands ist, die sich in jedem Schritt ändern könnte. Diese Behauptung widerspricht nicht der Behauptung des vorhergehenden Absatzes, da eine der Anzahl der Schritte proportionale Speicherung eine der Anzahl der Schritte proportionale Schaltungsanordnung erfordert, was eine der Menge proportionale Schaltungsanordnung impliziert, die erforderlich wäre, wenn alle Rückkopplungen beseitigt würden.
Wenn man Ausgänge haben darf, die ignoriert werden, wenn sie bei richtigen Eingangsbedingungen niemals hoch werden, dann könnte es möglich sein, ein System zu entwerfen, das theoretisch von einer reversiblen Logik profitieren würde. Wenn man beispielsweise einen Algorithmus hat, der mit einem 256-Wort-RAM-Block arbeitet, und eine "umkehrbare Logik-CPU" verwenden möchte, die 1.000.000 Operationen pro Sekunde ausführt, und jede Operation entweder ein Register, den Programmzähler oder einen aktualisierten RAM-Wort, könnte man eine "reversible CPU" verwenden, die:
Das obige Rezept kann beliebig oft wiederholt werden, um den Algorithmus für eine beliebige Anzahl von Schritten auszuführen. nur der letzte Schritt des Rezepts wäre nicht umkehrbar. Die Energiemenge, die pro algorithmischen Schritt bei nicht reversiblen Operationen aufgewendet wird, wäre umgekehrt proportional zur Größe des LIFO und könnte daher beliebig klein gemacht werden, wenn man ein ausreichend großes LIFO bauen würde.
Damit sich diese Fähigkeit jedoch in Energieeinsparungen jeglicher Art niederschlagen lässt, wäre ein LIFO erforderlich, das Energie speichert, wenn Informationen eingegeben werden, und diese Energie sinnvollerweise zurückgibt, wenn sie ausgelesen wird. Außerdem müsste das LIFO groß genug sein, um die Zustandsdaten für genügend Schritte zu speichern, damit die etwaigen Energiekosten für die Verwendung geringer sind als die Menge an Energie, die es sinnvoll eingespart hat. Da es unwahrscheinlich ist, dass die Menge an Energie, die beim Speichern und Abrufen von N Bytes aus einem praktischen FIFO verloren geht, 0 (1) ist, ist es nicht klar, dass eine Erhöhung von N den Energieverbrauch signifikant verringert.
quelle
Praktisch angewandtes reversibles Rechnen ist ein aktives Forschungsgebiet und wird in Zukunft wahrscheinlich an Bedeutung gewinnen. Die meisten Quantencomputer versuchen, reversible Qubit-Gatter zu erzeugen, und es ist sehr schwierig, experimentell die theoretischen Eigenschaften des QM-Formalismus zu erreichen, aber es werden stetige Fortschritte erzielt.
Ein weiterer grundlegender Punkt ist, dass jedes Mal, wenn die Energiedissipation auf einem Chip verringert wird, das Gate-System im Wesentlichen auf "reversibler" geschaltet wird und die energiesparende Chip-Dissipation im Mobile Computing seit langer Zeit eine hohe Priorität hat (eine Art von branchenweiter Paradigmenwechsel). Jahrzehntelang waren die Chip-Leistungssteigerungen (ähnlich dem Moore-Gesetz) etwas "entspannt" oder sogar "schlampig" mit Energieverlust, was jedoch vor einigen Jahren einen Punkt erreichte, an dem die Renditen abnahmen. Der weltweit führende Chiphersteller Intel versucht, auf Chips mit geringerer Leistung umzusteigen, um mit Arm mithalten zu können.
Möglicherweise gibt es in jüngster Zeit einen Durchbruch bei der Forschung mit supraleitender Technologie (Juni 2014), und es gibt andere aktive Forschungsprojekte in diesem Bereich.
Siehe z. B. Reversibles Logikgatter mit adiabatischen supraleitenden Bauteilen / Takeuchi, Yamanashi, Yoshikawa, Nature:
quelle
Fredkin-Tore sind realistisch und viele wurden implementiert. Es gibt ganze FPGA-Karten, die ausschließlich reversible Logikgatter verwenden und Fredkin- und Toffoli-Gatter als LUs verwenden.
Es gibt mehrere Probleme, die ihre weit verbreitete Verwendung in der Computerarchitektur bewirken. Es gibt mehrere "beworbene" Vorteile von Fredkin-Gates, die in realen Schaltungen nicht unbedingt wie erwartet funktionieren. Die Energieeinsparung von reversiblen Logikgattern beruht hauptsächlich auf der Tatsache, dass bei der Durchführung einer Operation keine Entropie erzeugt werden muss. Nach Aussage von Tom van der Zanden ist dies der Hauptgrund, warum reversible Logik viel effizienter sein kann. Warum ist dies in realen Schaltungen nicht der Fall:
Zusammenfassung: Fredkin-Gates verursachen bei der Implementierung realer Algorithmen viel Rechenaufwand. Abfallberechnung = Energieverschwendung. Aus diesem Grund nehmen die Busgrößen zu, wodurch sich die Dinge ausbreiten und verlangsamen. Darüber hinaus ist die physikalische Implementierung von Fredkin-Toren das Hauptanliegen der gegenwärtigen Technologie. Die derzeitige Implementierung verteilt die Dinge mehr, indem mehr Strom- und Masseleitungen erforderlich sind, um Verluste in der Schaltung zu kompensieren (was einen viel größeren Einfluss auf den Energieverlust hat) und viel mehr Platz auf Silizium beansprucht (was einen viel größeren Einfluss auf die Geschwindigkeit hat) )
Mir ist klar, dass dies ein alter Thread ist, aber viele der Antworten konzentrieren sich auf die Tatsache, dass Transistoren ineffizient sind. Mein Ziel ist es zu zeigen, dass unsere Algorithmen auch ineffizient sind und nicht gut mit reversiblem Rechnen umgehen. Ich bin ein Computeringenieur, der sich gerne mit reversiblen und Quantencomputern beschäftigt
quelle