Prozessor oder RAM schneller?

OoDex

Cadet 3rd Year
Registriert
Okt. 2014
Beiträge
35
Guten Tag,

ich meine vor einer Weile gelesen zu haben, dass entweder die CPU dem RAM oder der RAM der CPU Arbeit abnimmt, durch einen zusätzlich eingebauten Cache, weil ansonsten der andere zu langsam wäre. Wisst ihr welcher von beiden das ist? Und habt ihr vielleicht einen Link? Suche seit Stunden online, aber ich denke ich meine einfach das Falsche oder drücke mich schlecht aus.

Allgemein versuche ich gerade CPU vs GPU vs RAM für mich gedanklich hinzubekommen, also was genau was macht und was am Wichtigsten ist (wenn man performanter werden will, davon ausgehend man hat am Anfang den aktuellen Stand).

Edit: CPU hat Cache als Zwischenspeicher, damit es schneller verarbeitet werden kann, als wenn es im RAM gelagert werden würde. Stimmt das?
 
Zuletzt bearbeitet:
Was hast du aktuell für Hardware?
Was willst du damit machen?

Ohne entsprechende Informationen kann man nichts sagen. In einem Rechner kann, abhängig von der Anwendung sowohl die CPU, der RAM, die Grafikkarte als auch der Massenspeicher zum Flaschenhals werden. Und ja: im CPU-Limit kann schnellerer RAM einen Geschwindigkeitsvorteil bringen.
 
oder drücke mich schlecht aus
äääh.... allerdings! was genau willst du wissen?

eine cpu besitzt einen cache oder mehrere cache-ebenen. im vergleich zum ram zwar winzig klein, dafür quadrilliardenmillionenhundertausendmilliirgendwas schneller als der ram :)
 
Ich will gar nichts machen, ich möchte nur die Welt besser verstehen :) Ich meine verstanden zu haben, dass eine CPU die Rechenaufträge erledigt, während der RAM alles zwischenspeichert für die Rechenaufträge und die Grafikkarte arbeit abnimmt, in dem es selbst berechnet was zu berechnen ist (zB 3D). Ich meine gelesen zu haben, dass die CPU inzwischen aber eigenen eigenen Cache besitzt, um selbst Sachen zwischenzuspeichern und somit schneller bearbeiten zu können, als es erst beim RAM abzuholen, die Erklärung von mir kann totaler Müll sein, weiß wie gesagt leider nicht sehr viel darüber :(
Ergänzung ()

Und warum hat die CPU einen eigenen Cache? Also ich meine, sagen wir ich starte ein Spiel, wo hilft nun dieser Cache im Gegensatz zu ohne Cache, wenn der so klein ist?
 
OoDex schrieb:
Edit: CPU hat Cache als Zwischenspeicher, damit es schneller verarbeitet werden kann, als wenn es im RAM gelagert werden würde. Stimmt das?

Jep. Generell ist der temporäre Speicher des PC so aufgebaut, dass zuerst versucht wird Informationen im schnellsten Speicher zu halten, wenn das nicht möglich ist, wird in einen langsameren aber größeren Speicher ausgelagert. Grundsätzlich gilt dabei je größer desto langsamer. L1-Cache - L2 Cache - L3-Cache - Ram - Auslagerungsdatei oder Swap-Partition auf HDD oder SSD

edit: CPUs haben schon seit ewigen zeit caches (mehrere, kaskadierte).

Caches haben den sinn, dass sie viel schneller angebunden sind wie der ram. wenn die cpu für eine kleine berechnung nur wenig zwischenspeicher braucht, reicht der cache uU (am besten der L1, der ist am schnellsten. wenn nicht dann vielleicht der L2 usw). und je schnellerer zwischenspeicher verwendet werden kann, um so schneller kann darauf zugegriffen werden und die berechnung ist damit auch schneller fertig.
 
Zuletzt bearbeitet:
...
Die CPU rechnet, wenn du Rechenleistung brauchst muss die CPU halt dicker sein. Dann brauchen Programme und Datein die verwendet werden noch einen gewissen Platz im RAM welcher dann mind. diese Größe haben sollte, sonst bricht halt die Performance ein weil alles von der langsamen Platte hin und her geschaufelt werden muss. Für Spielen ist die Karte wichtiger aber es kommt alles auf die gespielten Spiele drauf an.

Am Ende sind diese Aussagen eh Bullshit weil halt zu generell, es kommt alles auf das Anwendungsgebiet an. Hab ich ne riesige Datenbank die ziemlich schnell kleinste Anfragen bearbeiten soll aber sehr weniger Rechenleistung benötigt? -> Kleine CPU und SEHR viel RAM damit die gesamte Datenbank da rein passt. Muss ich Sachen berechnen die über die CPU laufen und sehr viel Rechenleistung brauchen aber nur moderat viel RAM? -> Fette CPU und angemessen viel RAM. Spiele ich in UHD mit möglichst hohen Einstellungen? Dickste Karte wenn das Budget es hergibt, CPU angemessen um AAA Titel zu stemmen und genug RAM für die Spiele.


Evtl. interessant: http://www.lighterra.com/papers/modernmicroprocessors/
 
K3ks schrieb:
Am Ende sind diese Aussagen eh Bullshit weil halt zu generell, es kommt alles auf das Anwendungsgebiet an. Hab ich ne riesige Datenbank die ziemlich schnell kleinste Anfragen bearbeiten soll aber sehr weniger Rechenleistung benötigt?
Das trifft es ziemlich gut. In einem Standard Desktop-PC heutzutage würde man wahrscheinlich sagen, dass die Investition in CPU Takt mehr bringt als die Investition in RAM-Takt und -Timings. Wenn die RAM-Größe aber so klein ist, dass das System ständig mit Nachladen beschäftigt ist, bringt auch eine schnelle CPU wenig.

Beruflich arbeite ich gerade an einer DB Applikation wo wir uns entschieden haben nicht auf CPU-Leistung zu optimieren, da der Flaschenhals der Speicher ist. Also wird der Speicher so groß gewählt, dass die gesamte DB im RAM geladen werden kann und direkte Zugriffe ohne Laden möglich sind.
 
OoDex schrieb:
... wo hilft nun dieser Cache ..., wenn der so klein ist?
Am Ende sind es einfachste Rechenoperationen, die von der CPU durchgeführt werden. Es gibt nur sehr viele davon, die in kürzester Zeit durchgeführt werden müssen. Eine CPU taktet dementsprechend sehr hoch. Und da es keinen Flaschenhals geben soll, durch den die Party ins Stocken gerät, müssen die Ergebnisse in verschiedenen Cache-Ebenen zwischengepuffert werden.

Im Gegensatz zu den CPU-Caches müssen im RAM oder VRAM z.B. große Texturen also Raster unzerlegt abgelegt werden. Deshalb müssen diese Speicher auch entsprechend größer sein. Man opfert dann aber zwangsweise Geschwindigkeit.

Irre ist, dass moderne CPUs mittlerweile schon spekulieren, was ein CPU-Cache an Ergebnissen enthalten könnte und versuchen erstmal mit einem spekulierten Ergebnis weiterzurechnen. Wenns doch nicht stimmt, muss doch (wie blöd) im Cache nachgeschaut werden. Wenn es nur zu einem guten Teil stimmt mit der Spekulation, ist die CPU schneller, als wenn sie immer im Cache nachschaut.
An der puren Existenz eines solchen Mechanismus erkennt man, wie einfach im Grunde die Rechenoperationen sein müssen, damit so etwas überhaupt funktionieren kann.
 
Zuletzt bearbeitet:
Vielen Dank für eure Antworten, das hat definitiv einiges geklärt, was in meinem Kopf noch offen war. Mal ein klein wenig anderes Thema: Warum ist die GPU bei Spielen so wichtig? Beispiel Minecraft: Ich habe einen Laptop mit einer integrierten Grafikkarte und einer zusätzlichen von NVIDIA. Lasse ich Minecraft über die integrierte laufen komme ich auf ~50 FPS, mit der von NVIDIA auf 140 FPS. Was genau ist denn an der Grafikkarte von NVIDIA anders, dass das Programm um so vieles schneller läuft? Ich merke das auch, wenn ich für zB Chrome oder Photoshop die GPU von NVIDIA verwende, es geht enorm flüssig und schnell, fast ohne Ladezeiten.
Also ich meine damit nicht exakt die Specs, sondern was generell dafür zählt.
 
OoDex schrieb:
... Warum ist die GPU bei Spielen so wichtig?...
Also ich meine damit nicht exakt die Specs, sondern was generell dafür zählt.
Das Zauberwort heißt Parallelisierung. Je mehr parallele Recheneinheiten an einer grundsätzlich parallelisierbaren Rechenaufgabe arbeiten, desto schneller ist die Rechenaufgabe fertig gerechnet.

Rasterbearbeitung ist quasi dafür prädestiniert.

Diese Parallelisierung kann man jetzt aber auch wieder besser oder schlechter umsetzen. Das führt zum Zauberwort Effizienz.

Edit:
Das menschliche Gehirn ist z.B. der energieeffizienteste, unspezialisierte Array den wir kennen. Keine Maschine kommt da nur annähernd ran. Parallelisierung und Geschwindigkeit ist also nicht alles ;)
 
Zuletzt bearbeitet:
Es ist auch wichtig, sich zu vergegenwärtigen, dass eine große Aufgabe, die dem Computer gestellt wird, in sehr viele Kleinere unterteilt wird. Diese kleinen Aufgaben kommen im schnellen Cache unter und am Ende wird alles zur großen Antwort wieder zusammengesetzt.
Im übertragenden Sinne kann man sagen, dass die Aufgabe 5*6 in 5+5+5+5+5+5 unterteilt wird. Immer nur 5 addieren geht schnell und benötigt wenig Platz (entspräche dem Cache). Die gesamte Multiplikation benötigt mehr Platz sowohl als Operation an sich als auch für das Ergebnis (entspräche dem RAM).
 
da_reini schrieb:
edit: CPUs haben schon seit ewigen zeit caches (mehrere, kaskadierte).

nun ja, seit ewigen Zeiten ist nun etwas übertrieben. Intel kann es im Consumerbereich erst seit dem Pentium II mit dem BackSideLevelII-Cache, jedoch gab es hier nie MBs mit einem weiteren aufgelöteten Cache, der hätte Nummer 3 werden können. AMD konnte es bereits eine Generation eher bei den Sockel7-Systemen. So kam es dazu, dass man aufgrund des sonst auf dem Mainboard befindlichen L2-Cache, der bereits in der CPU steckte und den Cache eigentlichen L2-Cache auf dem Mainboard zum L3-Cache mutierte.

Ein netter Nebengeschmack war, dass man damit nun mehr als 128MB RAM direkt adressieren konnte, das blieb dem Intel P2/P3 leider verwehrt.
 
Zuletzt bearbeitet:
naja, pentium II zeiten ist ja auch schon ewig her, wenn es um technologie geht. Für viele hier ist ein Penitum II noch vor ihrer zeit (also wann sie den ersten pc bekommen haben) ;)
 
OoDex schrieb:
Was genau ist denn an der Grafikkarte von NVIDIA anders, dass das Programm um so vieles schneller läuft? Ich merke das auch, wenn ich für zB Chrome oder Photoshop die GPU von NVIDIA verwende, es geht enorm flüssig und schnell, fast ohne Ladezeiten.
Also ich meine damit nicht exakt die Specs, sondern was generell dafür zählt.

Wie neofelis schon gesagt hat, ist die Parallelisierung der große Vorteil von GPUs. Schau dir einfach mal die Specs von einer Graka an. Der Takt is zwar vergleichsweise gering (<2 GHz) dafür gibt es aber viele hunderte Ausführungseinheiten, eine CPU hat dafür einen hohen Takt (> 3,5 GHz) aber wenig Kerne

Je nachdem welche Art von Daten du zu verarbeiten hast, ist die CPU oder die GPU besser geeignet

Die Nvidia ist übrigens einfach schneller, weil sie wesentlich mehr Dampf unter der Haube hat als die iGPU
 
Ich hatte nun gelesen, dass die Prozessoren immer mehr Berechnungen der GPU übernehmen, während die GPU nur noch für "Härtefälle" benutzt wird, und das soll in Zukunft verstärkt werden.
"Zunehmend wird die Grafikverarbeitung von der Grafikkarte in den Hauptprozessor verlagert. Das bedeutet jedoch nicht, dass die Zeit der Grafikkarten vorbei ist. Es ist eher so, dass die Grafikfunktionen, die bereits "onboard" im Chipsatz integriert sind, gleich in den Prozessor zu integrieren. Konsequenterweise muss die Grafikausgabe dann auch vom Prozessor aus erfolgen."

https://www.elektronik-kompendium.de/sites/com/0506191.htm

Bedeutet doch aber, dass ich noch immer eine Grafikkarte benötige, um überhaupt etwas darzustellen, sie wird lediglich durch den Prozessor entlastet. Und sobald etwas intensiveres kommt übernimmt das dann die Grafikkarte?
 
von wo stammt die aussage? in welchem Kontext wurde diese getätigt? Kann man meiner Meinung nach nicht allgemein so sagen. War vielleicht gemeint, dass viele Prozessoren eine iGPU mittlerweile haben? Die aktuellen Ryzen CPUs haben ja keine iGPU zB.

Generell gilt bei Grafik/3D Berechnung: diese lassen sich sehr gut parallelisieren. Damit können GPUs viel besser umgehen, da sie ihre Shader dazu verwenden können von den normalerweise sehr viele vorhanden sind. CPUs konnen das zwar auch berechnen, haben aber im vergleich dazu nur sehr wenig Ressourcen für parallel rechenvorgänge zur verfügung zB 4 Kerne mit Hyper threading 8 Threads. im vergleich dazu kann eine moderne gpu ein paar tausend shader haben. die sind zwar nicht so leistungsstark wie ein cpu kern (oder thread) aber in summe viel viel öfter vorhanden.

Ob nun der Grafikchip in der CPU sitzt (iGPU) oder ein seperate Grafikkarte ist (dGPU) ist dann wieder eine andere Sache.
 
Zuletzt bearbeitet:
Nein zu allem. Die GPU wurde vor ner Weile mehr oder weniger in die CPU integriert, die verschmelzen vlt. langsam, und die GPU kriegt (dadurch) MEHR Aufgaben. Jeder kriegt dann Aufgaben für die er besser geeignet ist, dann sind auch noch Videodecoder etc. in der Karte drin. Das ist alles alter Tobak, die Onboardkarten waren halt früher auf dem Brett und sind heute halt im Prozessor (immer mehr Teile die früher auf den Brettern waren wandern in die CPU bzw. SoC). Ändert nichts an der 'Onboard-Bildausgabe' weil die Anschlüsse immer noch am Mainboard sind.

Auf den 2ten Teil: du benötigst eine Karte für Bildausgabe: Entweder im Prozessor oder auf dem Brett oder auf einem Steckplatz des Bretts. Meistens im Prozessor was reicht, da brauchste dann keine Zusätzliche. Die Brettkarten (Karten auf dem Mainboard, durrrrp) sind heute eigentlich nicht mehr nötig, für Power dann halt eine Steckkarte (daddeln mit hohen Einstellungen/AAA Titel, crunchen via Karte etc. etc. aber für das Meiste reicht die Onboard im Prozessor).
Interessant bei einigen Notebooks: die haben 2 Karten (eine im Prozessor und ne zusätzliche auf dem Brett bzw. via der mobilen PCIe-Varianten): Da übernimmt dann die dickere 'dedizierte' Karte dann rechenintensivere Aufgaben.

Und wie über mir erwähnt: Nicht jede CPU hat ne Grafikkarte integriert bzw. aktiviert. Die brauchen natürlich irgendwie ne Grafikkarte für Bildausgabe.
 
Zuletzt bearbeitet:
Würde nicht alle Aussagen von dieser Seite auf die Goldwaage legen.
Die Grafikkarte bzw. der Grafikprozessor verbessert in der Hauptsache die Geschwindigkeit der Bildschirmdarstellung. Zum Beispiel beim Verschieben von Fenstern und Bildelementen, stufenloses Zoomen und Drehen der Zeichenfläche.
Glaube nicht dass es heutzutage wirklich viel unterschied macht beim verschieben von fenstern welche grafikkarte man hat... Vielleicht bei so spezialfälle wie autodesk inventor. Aber generell sind die Aussagen recht verwirrend, und es werden mMn viele dinge verallgemeinert, die im normalfall so nicht stimmt.

Vielleicht kennt ja wer eine Seite, die diese Dinge besser erklärt?
 
Zuletzt bearbeitet:
Zurück
Oben