Ich habe kürzlich mit einem Freund über die LaTeX-Kompilierung gesprochen. LaTeX kann nur einen Kern zum Kompilieren verwenden. Für die Geschwindigkeit der LaTeX-Kompilierung also die Taktrate der CPU ist am wichtigsten (siehe Tipps zur Auswahl der Hardware für die beste LaTeX-Kompilierungsleistung )
Aus Neugier habe ich gesucht CPUs mit den höchsten Taktraten. Ich denke, es war Intel Xeon X5698 mit 4,4 GHz ( source ), das die höchste Taktrate hatte.
Bei dieser Frage geht es jedoch nicht um CPUs das wird verkauft. Ich würde gerne wissen, wie schnell es gehen kann, wenn Sie sich nicht um den Preis kümmern.
Eine Frage lautet also: Gibt es eine physikalische Grenze für CPU-Geschwindigkeit? Wie hoch ist sie?
Und die andere Frage lautet: Was ist die höchste CPU? Bisher erreichte Geschwindigkeit?
Ich habe immer gedacht, dass die CPU-Geschwindigkeit aufgrund der Kühlung begrenzt ist (also Hitze ) wird so schwierig. Aber mein Freund bezweifelt, dass dies der Grund ist (wenn Sie keine traditionellen / billigen Kühlsysteme verwenden müssen, z. B. in einem wissenschaftlichen Experiment).
In [2] habe ich diese Übertragungsverzögerungen verursachen eine weitere Einschränkung der CPU-Geschwindigkeit. Sie erwähnen jedoch nicht, wie schnell es werden kann.
Was ich gefunden habe
- [1] Wissenschaftler finden grundlegende maximale Grenze für Prozessorgeschwindigkeiten : Es scheint sich nur um Quantencomputer zu handeln, aber diese Frage betrifft „traditionelle“ CPUs.
- [2] Warum gibt es Grenzen für die CPU-Geschwindigkeit?
Über mich
Ich bin ein Informatikstudent. Ich weiß etwas über die CPU, aber nicht zu viel. Und noch weniger über die Physik, die für diese Frage wichtig sein könnte. Denken Sie also bitte an Ihre Antworten, wenn dies möglich ist.
Kommentare
- Ihre Frage ist nett, erwarten Sie einige sehr gute und gebildete Antworten. Meine zwei Cent: die Implikation “ läuft nur von einem Kern ab “ – > “ Uhr ist am wichtigsten “ ist nicht wahr.
- Der aktuelle Datensatz für eine übertaktete CPU ist Der AMD Bulldozer läuft mit 8,4 GHz . Er wurde mit flüssigem Stickstoff gekühlt.
- Der Titel der Frage lautet jedoch “ Was begrenzt die CPU-Geschwindigkeit? “ Es ist zu beachten, dass die Anweisung: “ LaTeX nur eine verwenden kann Kern für die Kompilierung. Für die Geschwindigkeit der LaTeX-Kompilierung ist also die Taktrate der CPU am wichtigsten. “ ist nicht unbedingt wahr. Der CPU-Cache kann auch einen Unterschied machen. Aufgrund seiner Modernität CPUs In Kombination mit der Tatsache, dass es unterschiedliche CPUs mit identischen Frequenzen, aber unterschiedlichen Cache-Größen gibt und wie die Software geschrieben und verwendet wurde, kann der CPU-Cache einen größeren Einfluss auf die Ausführungsgeschwindigkeit haben als die CPU-Frequenz.
- Die Single-Thread-Leistung ist nicht direkt proportional zur Taktrate. Die Beziehung ist komplexer. Dies kann teilweise durch die Ähnlichkeit der jüngsten Intel x86-Mikroarchitekturen mit Verbesserungen der Mikroarchitektur maskiert werden, die einen Teil der Kosten für die Frequenzerhöhung ausgleichen.
- Ich schlage vor, einen 2004er 2-GHz-Prozessor mit einem 2014er 2-GHz-Prozessor zu vergleichen. Sie ‚ werden feststellen, dass sie ‚ selbst bei Single-Thread-Aufgaben nicht im selben Ballpark sind und selbst wenn beide dasselbe implementieren Befehlssatz – Die CISC-Befehle, die ‚ eingegeben werden, sind eine Sache, aber die Mikrooperationen, in die diese unterteilt sind, sind eine ganz andere.
Antwort
Praktisch begrenzt die CPU-Geschwindigkeit sowohl die erzeugte Wärme als auch die Gate-Verzögerungen. In der Regel wird die Wärme jedoch zu einem weitaus größeren Problem, bevor letztere einsetzt
Neuere Prozessoren werden mithilfe der CMOS-Technologie hergestellt. Jedes Mal, wenn es einen Taktzyklus gibt, wird die Energie verbraucht. Höhere Prozessorgeschwindigkeiten bedeuten daher mehr Wärmeableitung.
http://en.wikipedia.org/wiki/CMOS
Hier einige Abbildungen:
Core i7-860 (45 nm) 2.8 GHz 95 W Core i7-965 (45 nm) 3.2 GHz 130 W Core i7-3970X (32 nm) 3.5 GHz 150 W
Sie kann wirklich sehen, wie sich die CPU-Übergangsleistung erhöht (exponentiell!).
Außerdem gibt es einige Quanteneffekte, die auftreten, wenn die Größe der Transistoren abnimmt. Bei Nanometern werden Transistorgatter tatsächlich “ undicht „.
http://computer.howstuffworks.com/small-cpu2.htm
Ich werde hier nicht näher darauf eingehen, wie diese Technologie funktioniert, aber ich bin sicher, dass Sie Google zum Nachschlagen verwenden können diese Themen.
Okay, jetzt zu den Übertragungsverzögerungen.
Jeder “ Draht “ in der CPU fungiert als kleiner Kondensator. Auch die Basis des Transistors oder das Gate des MOSFET wirken als kleine Kondensatoren. Um die Spannung an einer Verbindung zu ändern, müssen Sie entweder das Kabel aufladen oder die Ladung entfernen. Wenn die Transistoren schrumpfen, wird es schwieriger, dies zu tun. Aus diesem Grund benötigt SRAM Verstärkungstransistoren, da die tatsächlichen Speicherarray-Transistoren so klein und schwach sind.
In typischen IC-Designs, bei denen die Dichte sehr wichtig ist, Die Bitzellen haben sehr kleine Transistoren. Darüber hinaus sind sie typischerweise in große Arrays eingebaut, die sehr große Bitleitungskapazitäten aufweisen. Dies führt zu einer sehr langsamen (relativ) Entladung der Bitleitung durch die Bitzelle.
Von: Wie implementiere ich einen SRAM-Leseverstärker?
Grundsätzlich ist der Punkt, dass es für kleine Transistoren schwieriger ist, die Verbindungen anzusteuern.
Auch gibt es Gate-Verzögerungen. Moderne CPUs haben mehr als zehn Pipeline-Stufen, möglicherweise bis zu zwanzig.
Leistungsprobleme beim Pipelining
Es gibt auch induktive Effekte. Bei Mikrowellenfrequenzen werden sie ziemlich bedeutend. Sie können nach Übersprechen und dergleichen suchen.
Selbst wenn es Ihnen gelingt, einen 3265810 THz-Prozessor zum Laufen zu bringen, besteht eine weitere praktische Grenze darin, wie schnell der Rest des Systems dies unterstützen kann. Sie müssen entweder über RAM, Speicher, Klebelogik und andere Verbindungen verfügen, die genauso schnell arbeiten, oder Sie benötigen einen riesigen Cache.
Kommentare
- Vielleicht möchten Sie einen Link zu dieser Diskussion einfügen, um nützliche Referenzen zum Zusammenhang zwischen Taktrate und Stromverbrauch zu erhalten: physics.stackexchange.com/questions/34766/…
- Es gibt ‚ auch die Geschwindigkeit der Elektrizität, die bei Übertragungsverzögerungen zu berücksichtigen ist en.wikipedia.org/wiki/Speed_of_electricity
- Steigt es tatsächlich exponentiell oder nur quadratisch an? Tatsächlich sagt dieses -Video , dass
Power = Frequency ^ 1.74
. - Guter Punkt jedoch einer von Die Hauptschwierigkeiten beim CPU-Design sind die Verbindungen. Ein physikalisch großer Chip ist möglicherweise möglich, aber denken Sie daran, dass diese im Gigahertz-Bereich funktionieren. Sie möchten die Drähte kurz halten.
- Da die Frage theoretisch ist, kann hinzugefügt werden, dass andere Halbleiter wie Galliumarsenid höhere Frequenzen zulassen.
Antwort
Das Hitzeproblem wird durch Fuzzyhair gut abgedeckt. Beachten Sie Folgendes, um die Übertragungsverzögerungen zusammenzufassen: Die Zeit, die ein elektrisches Signal benötigt, um das Motherboard zu überqueren, beträgt jetzt mehr als einen Taktzyklus einer modernen CPU. Das Erstellen schnellerer CPUs wird also nicht viel bewirken.
Ein superschneller Prozessor ist wirklich nur bei massiven Prozessen zur Zahlenkalkulation von Vorteil, und nur dann, wenn Ihr Code sorgfältig optimiert wurde, um seine Arbeit zu erledigen. Chip. Wenn es häufig an einen anderen Ort für Daten gehen muss, wird all diese zusätzliche Geschwindigkeit verschwendet. In heutigen Systemen können die meisten Aufgaben parallel ausgeführt werden und große Probleme werden auf mehrere Kerne aufgeteilt.
Es klingt So würde Ihr Latex-Kompilierungsprozess verbessert durch:
- Schnellere E / A. Versuchen Sie es mit einer RAM-Disk.
- Ausführen verschiedener Dokumente auf verschiedenen Kernen
- Erwarten Sie nicht, dass ein bildintensiver Job mit 200 Seiten ausgeführt wird 2 Sekunden
Kommentare
- Schade, dass ich nur eine Gegenstimme erhalten darf. Ihre Antwort verdient mehr, um darauf hinzuweisen, dass die Taktrate möglicherweise nicht der Engpass im Problem des OP ‚ ist.
Antwort
Es gibt drei physikalische Grenzen: Wärme, Gate-Verzögerung und Geschwindigkeit der elektrischen Übertragung.
Der Weltrekord bei der bisher höchsten Taktrate ist (gemäß dieser Verbindung) 8722,78 MHz
Die Geschwindigkeit der elektrischen Übertragung (ungefähr gleich der Lichtgeschwindigkeit) ist die absolute physikalische Grenze, da keine Daten schneller als sein Medium übertragen werden können. Gleichzeitig ist diese Grenze sehr hoch, so dass sie normalerweise kein begrenzender Faktor ist.
CPUs bestehen aus einer großen Anzahl von Gattern, von denen einige seriell (nacheinander) verbunden sind. Ein Wechsel vom hohen Zustand (z. B. 1) zum niedrigen Zustand (z. B. 0) oder umgekehrt dauert eine Weile. Dies ist die Gate-Verzögerung. Wenn Sie also 100 Gates seriell verbunden haben und eines 1 ns zum Umschalten benötigt, müssen Sie mindestens 100 ns warten, bis das Ganze eine gültige Ausgabe liefert.
Diese Switches sind das Richtige verbraucht die meiste Energie auf einer CPU. Das heißt, wenn Sie die Taktrate erhöhen, erhalten Sie mehr Schalter, verbrauchen also mehr Strom und erhöhen so die Wärmeabgabe.
Überspannungen (= >, die mehr Leistung liefern) verringern die Gate-Verzögerung ein wenig, erhöhen jedoch erneut die Wärmeabgabe.
Irgendwo um 3 GHz Der Stromverbrauch für die Taktrate steigt extrem an. Aus diesem Grund können 1,5-GHz-CPUs auf einem Smartphone ausgeführt werden, während die meisten 3-4-GHz-CPUs nicht einmal auf einem Laptop ausgeführt werden können.
Aber die Taktrate ist nicht das einzige, was a beschleunigen kann CPU, auch Optimierungen an der Pipeline oder der Mikrocode-Architektur können eine erhebliche Beschleunigung verursachen. Aus diesem Grund ist ein 3-GHz-Intel i5 (Dualcore) um ein Vielfaches schneller als ein 3-GHz-Intel Pentium D (Dualcore).
Kommentare
- Schon das Übertakten erhöht den CPU-Stromverbrauch linear. Doppelte Taktrate bedeutet also doppelten Stromverbrauch. Bei höheren Taktraten werden die Gates jedoch zu langsam, um mit dieser Taktrate zu arbeiten, und es treten Berechnungsfehler auf – > zufällige Abstürze. Sie müssen also die Spannung erhöhen, um die Tore zu beschleunigen. Der Stromverbrauch skaliert genau im Vergleich zur Spannung. Eine doppelte Spannung bedeutet also das Vierfache des Stromverbrauchs. Fügen Sie das hinzu, um die Uhr zu verdoppeln, und Sie erhalten das Achtfache des Stromverbrauchs. Auch die notwendige Spannung steigt exponentiell mit der Taktrate an. de.wikipedia.org/wiki/CPU_power_dissipation
- Das andere Problem hierbei ist, dass Überspannungen nur Ihre CPU braten können und es nichts gibt, was dies kann dagegen getan werden. Wenn Ihre CPU z. 3,3 V können Sie möglicherweise auf 3,7 oder sogar 4 V erhöhen, aber wenn Sie auf Hoch gehen, wird der Chip nur zerstört. Ein weiterer lesenswerter Link: en.wikipedia.org/wiki/CPU_core_voltage
- Übertragungsgeschwindigkeit ist ein Problem: Bei 3 GHz erhalten Sie nur 10 cm / Zyklus. Da ein typischer Prozessorchip derzeit 300 m ² hat, glaube ich, dass man nach 10 GHz das Prozessordesign überdenken müsste, da wahrscheinlich nicht alle Teile des Chips in einem Zyklus erreicht werden können / li>
- @MartinSchr ö der: Das ist kein so großes Problem, da (a) die CPU aufgrund von Hitze und Gate-Verzögerung stirbt, bevor die 10 GHz erreicht sind und (b) Prozessoren werden mit jeder Generation kleiner. Zum Beispiel hat ein 6-Kern-i7 mit Hyperthreading ungefähr die gleiche Größe wie ein Singlecore-Pentium 4. Der i7 hat jedoch 6 Vollkerne und 6 weitere “ Halbkerne “ für das Hyperthreading. Auch da ist der Cache. Auch diese Kerne sind in Pipeline-Phasen unterteilt. Nur die Teile der CPU in einer Kern- und einer Pipeline-Phase (und möglicherweise der L1-Cache) müssen in einem Zyklus erreicht werden.
- @ com.prehensible Der von Ihnen verknüpfte Beitrag spricht tatsächlich speziell darüber , dass dieser 500-GHz-Transistor “ nur “ ein analoger Transistor ist, der für die analoge HF-Verarbeitung verwendet wird. Es ist keineswegs ein Computerprozessor.
Antwort
Die Antworten auf Ihre Fragen lauten: Ja , es gibt eine physische Begrenzung der CPU-Geschwindigkeit. Die höchste theoretische Grenze wird dadurch festgelegt, wie schnell ein „Schalter“ den Zustand wechseln kann. Wenn wir das Elektron als Basis für den Schalter verwenden, verwenden wir den Bohr-Radius $$ r = 5,291 \ mal 10 ^ {- 11} $$ und die schnellstmögliche Geschwindigkeit $$ c = 3 \ mal 10 ^ 8, $$ um die Frequenz zu berechnen $$ F = \ frac {1} {t} = \ frac {c} {2} \ pi r = 9.03 \ mal 10 ^ {17} \ text {Hz} $$ Bei der aktueller Stand der Technik, die tatsächliche Grenze liegt bei 8 $ mal 10 ^ 9 \ text {Hz} $$
Kommentare
- Ich habe einige Änderungen an Ihrem LaTeX vorgenommen. Könnten Sie bitte überprüfen, ob die Bearbeitung der Frequenz korrekt war?
- Wie sind Sie auf den aktuellen Stand der Technik gekommen?
- Sie würden auch den schnellstmöglichen Computer auf dem Schwarzschild bauen Radius eines Schwarzen Lochs für maximale Wirkung. Der Bohr-Radius ist viel zu groß, um mit hohen Geschwindigkeiten zu arbeiten. 🙂
Antwort
Eine Frage lautet also: Gibt es eine physikalische Grenze für die CPU-Geschwindigkeit?
Das hängt stark von der CPU selbst ab. Fertigungstoleranzen führen dazu, dass die physikalische Grenze für jeden Chip selbst von demselben Wafer etwas unterschiedlich ist.
Übertragungsverzögerungen verursachen eine weitere Einschränkung der CPU-Geschwindigkeit. Sie erwähnen jedoch nicht, wie schnell es werden kann.
Das liegt daran, dass transmission delay
oder speed path length
ist eine Wahl, die der Designer des Chips treffen muss. Kurz gesagt, es ist, wie viel Arbeit die Logik in einem einzelnen Taktzyklus leistet. Eine komplexere Logik führt zu langsameren maximalen Taktraten, verbraucht aber auch weniger Strom.
Aus diesem Grund möchten Sie einen Benchmark zum Vergleichen von CPUs verwenden. Die Zahlen für die Arbeit pro Zyklus sind sehr unterschiedlich. Wenn Sie also rohe MHz vergleichen, erhalten Sie möglicherweise eine falsche Vorstellung.
Antwort
Praktisch ist es definitiv die Wärmeleistung, die ungefähr proportional zum Quadrat der Spannung ist: http://en.wikipedia.org/wiki/Thermal_design_power#Overview . Jedes Material hat seine spezifische Wärmekapazität, die die Kühleffizienz begrenzt.
Ohne Berücksichtigung der technischen Probleme bei der Kühlung und der Übertragungsverzögerung wird die Lichtgeschwindigkeit die Entfernung begrenzen, die ein Signal innerhalb unserer CPU pro Sekunde zurücklegen kann . Daher muss die CPU kleiner werden, je schneller sie arbeitet.
Schließlich kann die CPU ab einer bestimmten Frequenz für die elektronischen Wellenfunktionen transparent werden (Elektronen, die nach Schrödingers Gleichung als Wellenfunktionen modelliert werden).
2007 berechneten einige Physiker eine grundlegende Grenze für die Betriebsgeschwindigkeit: http://journals.aps.org/prl/abstract/10.1103/PhysRevLett.99.110502
Antwort
Neben allen anderen Antworten gibt es noch einige andere Überlegungen, die sich möglicherweise nicht direkt auf die CPU-Geschwindigkeit auswirken, aber dazu führen, dass etwas dagegen aufgebaut wird CPU ziemlich schwierig;
Kurz gesagt, oberhalb von Gleichstrom wird die Funkfrequenz zu einem Problem. Je schneller Sie fahren, desto eher ist alles dazu geneigt, als Riesenradio zu fungieren. Dies bedeutet, dass Leiterplattenspuren unter Übersprechen und den Auswirkungen leiden von ihrer inhärenten Kapazität / Induktivität mit benachbarten Spuren / Masseebene, Rauschen usw. usw. usw.
Je schneller Sie fahren, desto schlimmer wird dies alles – Komponentenbeine können eingeführt werden unacce ptable Induktivität zum Beispiel.
Wenn Sie sich die Richtlinien zum Anlegen von „grundlegenden“ Leiterplatten der Art eines Pegels eines Raspberry Pi mit etwas DDR-RAM ansehen, alle Spuren für den Datenbus usw. müssen gleich lang sein, einen korrekten Abschluss haben usw. und das muss deutlich unter 1 GHz liegen.