Aufbau eines Prozessors

Y

Yuzuke

Guest
Hi,

in letzter Zeit habe ich häufiger die Meldung über neue Prozessoren gelesen und entsprechende Bemerkungen über den Aufbau bei Wikipedia und unter Google recherchiert. Leider habe ich nicht alles verstanden. Daher hier ein paar Fragen von mir zum allgemeinen Aufbau von Prozessoren:

1. Wieviele Grundoperationen gibt es jetzt bei einem Prozessor? Es gibt Gleitkommaoperationen (GFlops) und es gibt die normalen Arithmetischen Operationen (GIPs). Welche gibt es noch? Was bewirken diese?
2. Wie viele unterschiedliche Prozessorarchitekturen gibt es eigentlich? Damit meine ich jetzt nicht Unterschiede wie Penryn -> Nehalem -> Sandy Bridge, sondern unterschiede zwischen x86, SPARC, etc. Worin unterscheiden sich diese? Gibt es Vor- und Nachteile der einzelnen Architekturen? (Und natürlich, ob es bei den unterschiedlichen Architekturen noch mehr Grundoperationen gibt - s. Frage 1)
3. Ich habe so ungefähr verstanden was der Unterschied zwischen 32bit und 64bit ist. 2^32 = 4,2 GB adressierbarer Speicher. Damit ich meine 6 GB nutzen kann, benötige ich 64 bit. Ich suche die ganze Zeit nach einer Möglichkeit mir das bildlich vorzustellen. Nehmen wir den Begriff einer "Datenleitung" - kann ich dann einfach sagen, dass bei 64bit einfach 64 von diesen "Datenleitungen" nebeneinander liegen, um entsprechend viel Speicher zu adressieren, oder ist das ein falscher Vergleich?
4. Heutige Grafikkarten sind ja ganz anders aufgebaut als CPUs. Worin bestehen die Unterschiede der jeweilien Architektur (also z.B. x86 zu der Evergreen Radeon HD 5xxx)? Auch hier wieder: Was sind Vor- und Nachteile der jeweiligen Architekturen? Wieso kann eine Grafikkarte nicht jegliche Berechnungen die ein Prozessor ausführt, ausführen (Eine normale CPU wird ja als Allround-Prozessor verstanden, während eine GPU ein spezialisierter Prozessor ist - heißt das, dass von den Grundoperationen eine GPU nur einige wenige davon ausführen kann oder alle und nur einige wenige davon langsamer?)?
5. Wenn man sich mal die TOP500 Liste anschaut, sieht man beim derzeit schnellsten Supercomputer 1,7 PetaFlops Rechenleistung aufgebaut aus tausenden normalen CPUs. Wieso setzt man das nicht wie beim derzeit zweitschnellsten Nebulae aus nur GPUs zusammen? Während ein Core i7 920 so um die 50 GFlops hat, hat eine Radeon HD 5870 in SP fast drei Teraflops. Um dann auf die Leistung eines Jaguars (TOP 500 Platz 1) zu kommen wären ja nur 625 dieser Grafikkarten nötig, was bedeutend weniger Kosten würde, als alles aus tausenden normalen CPUs zu basteln. Auch wenn man die DP Leistung nimmt, würde ein komplett aus Grafikkarten gebasteltes System vollkommen ausreichen und bei gleichem Preis ein CPU System in der Leistung doch um Längen schlagen. Wieso macht man es dann nicht?

Weitere Fragen werden sicherlich noch Folgen... Vielen Dank!

Yuzuke
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
1.
Es gibt nur diese zwei. Wobei ich eher von Ganzzahloperationen (ALU) und Gleitkommaoperationen (FPU) sprechen würde.

2.
Das ist auch bekannt unter Befehlssatzarchitektur (Instruction Set Architecture). Bei den jeweiligen Prozessoren selbst spricht man dann von Mikroarchitektur. Wie viele Befehlssatzarchitekturen es gibt? Keine Ahnung, sind schon einige. Die bekanntesten dürften aktuell wohl x86, ARM, Power, Itanium, MIPS und SPARC sein. Gibt aber noch viele weitere. Unterschiede gibt es natürlich in erster Linie bei der Art der Codierung, RISC vs CISC. Ebenfalls Unterschiede gibt es bei Funktionsumfang, Datenbreite und Kompatibilität. Vor- und Nachteile zu diskutieren, würde den Rahmen hier wohl sprengen. Wenn du aber RISC und CISC vergleichst, kannst du schon einiges herausfiltern.

3.
Nein, der Vergleich ist schon richtig. Mit 32-bit kannst du eben 2^32 Werte darstellen bzw im Falle von Speicheradressierung 2^32 Adressen ansprechen. Wenn du also jedes Byte ansprechen willst bzw jedes Byte eine eigene Adresse darstellt, ist bei 2^32 Byte (4 GiB) Schluss. In der Realität ist das ganze allerdings um einiges komplizierter, da die Speicherverwaltung moderner Systeme virtuell ist.

4.
GPUs haben idR einen eigenen Befehlssatz, also kein x86. Sie können aber genauso wie CPUs Ganzzahl- und Gleitkommaoperationen ausführen. Der wesentliche Unterschied ist, CPUs besitzen wenige, dafür aber recht universelle Ausführungseinheiten. GPUs besitzen hingegen recht viele, dafür aber "schlanke" und weit weniger komplexe Ausführungseinheiten. Das Ergebnis ist, GPUs sind für ihre Einsatzzwecke äusserst performant, was einen hohen Grad an Parallelisierung voraussetzt. Dafür sind ihre Einsatzzwecke begrenzt, weil sie über weit weniger Funktionsumfang als eine "Allround-CPU" verfügen.

5.
GPU-Computing bei Supercomputern steht gerade mal am Anfang. Gib dem ganzen mal noch ein bisschen Zeit.
 
Ich habe davon kein Plan aber war es nicht auch so, dass GPU's nur bestimmte Operationen Rechnen können im Gegensatz zu CPU's?
Irgendwas mit keine oder nur Gleitkommazahlen oder sowas - meinte da mal irgendwas aufgeschnappt zu haben.
 
Zuletzt bearbeitet:
Wie ich schon sagte, auch GPUs können Ganzzahl- und Gleitkommaoperationen ausführen. Was die einzelnen Operationen betrifft, von denen es Unmengen gibt, angefangen bei den Grundrechenarten (add/sub/mul/div), über logische Verknüpfungen, Shifts, Sonderfunktionen wie Quadratwurzel, etc.pp, ist eine GPU vom Funktionsumfang allerdings eingeschränkt gegenüber CPUs.
 
Zuletzt bearbeitet:
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh