Hmmm offensichtlich ist immer noch nicht ganz klar geworden, warum 1866er nichts bringen
kann.
Ich versuche es nochmal zu erklären... Zunächst antworte ich aber nochmal auf deinen Beitrag.
Den Links nach zu urteilen bringt 1866er RAM durchaus mehr Leistung as 1600er.
Welchem Link? Die Statistik, die elarei hier gepostet hat, sagt wenig aus zu dem Thema. Getestet wurde nur bis 1600Mhz, enthält Fehler (z.B. sind 2x4GB + 1x2GB bei mir nicht 6GB), einige Messwerte wage ich auch zu bezweifeln (die Speicherbandbreite von größeren Modulen sollte bei genau gleichbleibender Geschwindigkeit eigentlich nicht größer werden, wenn alle anderen Werte gleich bleiben). Aber ganz davon abgesehen, ob da nun Fehler vorliegen oder nicht: Über 1866Mhz sagt sie gar nichts aus. Die CL-Zeiten der verwendeten Speicher wären auch noch wichtig - denn wenn wir hier über 1-5% Unterschiede sprechen, machen CL-Zeiten mit 2-3% Änderungen in den Messwerten einen großen Unterschied aus. Außerdem liegen Schwankungen im Bereich von unter 5% bei den verwendeten Benchmarks (PCMark, 3DMark) im Bereich der Messungenauigkeiten. Wurden die Werte gemittelt? Unter 5, besser 10 Durchläufen lasst sich im Bereich unter 5% absolut keine Aussage treffen bei den Benchmarks. Vermutlich war der eingesetzte Prozessor auch kein i7 QuadCore (findet man doch nicht im T420s, oder?) Dann kann der Speichercontroller auch nur 1333MHz. 1600MHz-Speicher wird dann also auf 1333MHz betrieben und kann nur - wenn es denn so ist - durch eventuell niedrigere CL-Zeiten punkten. Wenn man in der Statistik gleiche Konfigurationen bei 1333MHz und 1600MHz vergleicht, findet man auch einige Werte, die tatsächlich gestiegen sind, aber auch Werte, die gefallen sind - bei höherer Speichergeschwindigkeit. Die Stufe von 1066er zu 1333er scheint dagegen was zu bringen. Klar, da kommt der Speichercontroller mit. Aber wie gesagt, wenn die Werte nicht über mind. 5 Messungen gemittelt sind und wir keine Angaben über CL-Zeiten haben, dann können wir über so eine Statistik lange diskutieren, sie sagt einfach nichts aus bei Werten <5%. Ohne Mitteln wirds selbst bei ~10% noch schwer, wirklich Aussagen zu treffen.
Gut, also zum nächsten Link - dem von dir verlinkten Thread. Dort ist einmal die Rede von "
Wie schon gesagt, obwohl Intel als "unterstützten Speicher" max. DDR1333 MHz angibt, erreichen die CPUs und vor allem die GPUs von Sandy Bridge mehr Performance mit DDR1600 bzw. DDR1866 Speicher." Ohne weitere Angaben ist die Aussage ein wenig haltlos. Im Thread weiter hinten hast du dann aber ja deinen 3DMark-Wert mit 1600er Speicher mit dem von jemand anderem mit 1333er Speicher verglichen. Die Werte unterscheiden sich um 0,07%. Das ist schon fast Zufall, dass sie SO exakt beieinander liegen. Zeigt aber wieder, dass es keinen Unterschied gibt. In dem Thread sind aber wiederum einige Threads verlinkt.
Der Link zu CHIP zeigt wieder nur, dass Dual-Channel was bringt. So viel wussten wir vorher auch schon ;-)
Auch die beiden Threads, die in dem Thread verlinkt werden und zu notebookreview.com verlinken, diskutieren über das Thema, kommen aber zu keinem eindeutigen Ergebnis. Was alle zeigen, sind Verbesserungen durch mehr Speicher, Ausnutzung von Dual-Channel, höherer Speed so lange die Speichercontroller hinterherkommen und niedrigere CL-Zeiten. Benchmarks, die nicht auf dem gleichen Rechner ausgeführt wurden, sagen leider auch eigentlich nichts aus für so einen Vergleich.
Wenn man also mal folgende Werte gleich lässt:
- gleiche Speichergröße
- gleiche Anzahl an belegten Speicherbänken
- der selbe verwendete Laptop ohne Änderung in sonstigen Konfigurationen
- die gleichen CL-Zeiten des Speichers
dann wird man meiner Meinung nach (gemittelt über ein paar Werte) exakt das gleiche Benchmarkergebnis bekommen, wenn man die Speicherkonfiguration 1333MHz (bzw. 1600MHz bei den i7-QuadCore-Modellen) als Maximalausbau mit einer Konfiguration mit 1866 oder 2133MHz vergleicht.
Ja, du hast recht, die CPU hat nichts davon, aber es geht ja hier um die Grafik, und die kann davon profitieren. (Siehe diverse Threads)
Wie soll die GPU davon profitieren, die CPU aber nicht? Beide kommunizieren mit Hilfe des gleichen Speichercontrollers mit dem Speicher.
Vielleicht meinst du ja was anderes und ich check es bloß nicht, aber die Aussage, dass höher getakteter RAM, auch mehr (wenn auch vergleichsweise wenig) Leistung für die HD3000 bedeutet, stimmt. Das wurde schon bewiesen und steht auch im Wiki so drinnen.
Wie gesagt, so lange der Speichercontroller mitkommt, ist das richtig. Sonst nicht...
Ich gehe davon aus, duwillst sagen, dass 1600er zwar mehr 3D Leistung bringt, 1866 aber schon nicht mehr. So habe ich das verstanden. Aber wie schon gesagt, dir werden hier mehrere bestätigen können, dass 1866er mehr Power für die HD3000 birgt. Der Unterschied zwischen 1333er und 1600er RAM ist minimal. Erst ab 1866er kann man den Unterschied spüren/sehen. (mehr FPS bei Spielen) So zumindest laut einer älteren c't Ausgabe.
Richtig, ich will sagen, dass bei den i7-Quadcore eine Steigerung zu merken ist, wenn man von 1066er auf 1333, von 1066er auf 1600 oder von 1333er auf 1600er aufrüstet, nicht aber wenn man von 1600 auf 1866 oder 2133er geht. Bei den Dual-Core-Modellen wird man dementsprechend nur einen Unterschied merken, wenn man von 1066er auf 1333er geht, nicht aber von 1333er auf 1600, 1866 oder 2133er. Vorausgesetzt immer, die CL-Zeiten bei der eingesetzten Frequenz bleiben gleich.
Nun nochmal zur ausführlicheren Erklärung, warum das nichts bringen kann. Das folgende ist jetzt fachlich nicht 100%ig korrekt, sondern zur Veranschaulichung vereinfacht.
Zunächst eine Grafik:

Sowohl CPU als auch GPU kommunizieren mit dem Speicherkontroller. Von dort aus geht es dann zum RAM. Die beiden rot markierten Strecken sind die Strecken, über die wir hier sprechen. Wenn wir nur einen Speicher einsetzen, können wir nur eine der roten Strecken nutzen. Bei zwei Speichern (den eingeklammerten also auch einsetzen, DualChannel) können wir beide roten Verbindungen nutzen. In der Theorie würde das die Bandbreite verdoppeln. CPU und GPU können dann durch den Speichercontroller hindurch mit doppelter Geschwindigkeit auf Speicher zugreifen. Ebenso können wir die Geschwindigkeit der roten Strecke verdoppeln, wenn wir die Frequenz, mit der Daten übertragen werden, auch verdoppeln.
Wovon hängt jetzt die genaue Geschwindigkeit der roten Strecke also ab? Als erstes vom DualChannel. Als nächstes ist dann die Frequenz wichtig, mit der Daten übertragen werden. Und als letztes ist noch die Wartezeit wichtig, die zwischen der Anforderung eines Datenpakets und der Auslieferung vergeht. Die rote Strecke funktioniert aber nur, wenn Speichercontroller und Speichre sich mit der Geschwindigkeit einig sind. Damit sich beide verstehen, müssen sie mit exakt der gleichen Geschwindigkeit sprechen, dabei einigen sie sich auf das schnellstmögliche, was beide noch können. Kann der Controller z.B. 1600MHz und der Speicher nur 1066MHz, einigen sich die beiden auf 1066MHz. Können beide 1600MHz, fällt die Einigung leicht. Kann der Controller z.B. 1333MHz und der Speicher 2133MHz, einigen sich die beiden eben auf 1333MHz. Wenn man also möchte, dass sich keiner der beiden langweilt, dann sollte die maximale Geschwindigkeit von Speichercontroller und Speicher genau gleich sein, dann einigen sich beide auf das gemeinsame Maximum. Man sieht also, wenn man Speicher einsetzt, der schneller als das Maximum des Controllers ist, bekommt der Speicher Langeweile und läuft eben auf geringerer Geschwindigkeit. Ich hatte aber eben auch schon erwähnt, dass noch ein zweiter Parameter wichtig ist, nämlich die Wartezeit. Wenn z.B. die GPU Daten haben will, dann fordert sie diese an. Diese Anforderung wird vom Speichercontroller verarbeitet und an den Speicher geschickt. Der schaut sich an, was für Daten gefordert werden und begibt sich intern auf die Suche. Nach ein paar Taktzyklen hat er die Daten dann gefunden und stellt sie bereit bzw. schickt sie zurück zum Speichercontroller, der sie an die GPU weiterreicht. Das erhöht zwar nicht die maximale Datenrate auf den roten Strecken an sich, aber wenn Daten nach weniger Wartezeit ankommen, bleibt mehr Zeit für die Verarbeitung in CPU/GPU bzw. die Berechnung ist früher fertig, man kann sich also schon an die nächste Berechnung machen, fordert schon früher die nächsten Daten an. Die theoretische maximale Datenrate bleibt gleich, in der Praxis kommt man näher an diese theoretische Datenrate, da durch weniger Wartezeit öfter Daten angefordert werden können. Dadurch steigt natürlich auch die gesamte Performance von CPU und GPU, obwohl die Frequenz, auf die sich Controller und RAM geeinigt haben, noch gleich geblieben ist.
Das Ergebnis ist also:
1.) Höhere Frequenzen sorgen für höhere theoretische/mögliche Datenraten. Dabei ist entscheidend, wer die geringere maximale Frequenz kann, auf die wird sich geeinigt. Daher bringt es wie gesagt nichts, Speicher einzusetzen, der schneller ist, als der Controller kann.
2.) Wenn die Wartezeiten zwischen Anforderung und Auslieferung eines Datenpakets sinken, wird die tatsächliche/praktische Datenrate höher und nähert sich mehr der theoretisch möglichen an. Die Wartezeiten sollten also möglichst niedrig sein.
Die Performance von CPU und GPU (um die es hier ja geht) steigt also, wenn wir Speicher einsetzen, der möglichst dem Maximum des Controllres entspricht und wenn wir dann noch Speicher nehmen, der möglichst kleine Wartezeiten hat.
Ergebnis in dem hier genannten Fall: Speicher bei 2nd generation SandyBridge im Notebook sollte 1333er sein, bei den Quad-Core-Modellen 1600er. Dual Channel sollte man unbedingt ausnutzen. Und die Wartezeiten (CL-Zeiten/CAS-Latency) sollten möglichst niedrig sein.
So, das ganze wäre ja langweilig, wenn es keine Ausnahmen geben würde. Erste Ausnahme ist die "extreme edition" vom Core-i7. Diese kann mit Intel XMP und Speicher, der auch XMP kann, den Speichercontroller übertakten und dadurch Geschwindigkeiten erreichen, die höher liegen, als das eigentliche/normale Maximum des Controllers und dadurch die Geschwindigkeit nochmal steigern. Die Extreme-Edition ist aber wohl nicht sehr verbreitet.
Zweite Ausnahme: Es gibt einen Fall, wann es Sinn machen kann, schnelleren Speicher zu nehmen, als der Controller eigentlich kann. Der Grund liegt dann in den Wartezeiten. Der Speicher wird dann auf geringerer Geschwindigkeit eingesetzt, als er eigentlich maximal kann. Aus diesem Grund langweilt er sich - und kann die Langeweile etwas ausgleichen. Er "sucht" dann intern nämlich schneller, senkt also die Wartezeit zwischen Anforderung und Auslieferung eines Datenpakets. Ein konkreteres Beispiel:
Der Speichercontroller kann maximal 1600MHz, man setzt Speicher mit 1600MHz ein, beide einigen sich also auf 1600MHz als Übertragungsfrequenz, der Speichre hat außerdem einen CL-Wert von 9, braucht also 9 Takte Pause zwischen Anforderung und Auslieferung eines Datenpakets.
Nun nehmen wir einen zweiten Speicher mit 2133MHz und einem CL-Wert von 11. Da der Controller maximal 1600MHz kann, einigen sich beide auf 1600MHz und der Speicher "langweilt sich". Wegen dieser Langeweile kann er aber intern schneller arbeiten, die CL-Zeit bei der eingesetzten geringeren Frequenz von 1600MHz beträgt z.B. nur noch 8. In beiden Beispielen läuft der Speicher also auf 1600MHz, im zweiten Beispiel kann der Speicher aber wegen seiner Langeweile nun schon nach 8 Zyklen die Antwort liefern, im ersten muss man 9 Zyklen warten. Obwohl der Speicher also auf den ersten Blick keinen Sinn macht, weil er unterfordert wird, kann er schneller sein als der aus Beispiel 1.
Wenn wir nun aber den Speicher aus Beispiel 1 (den 1600er mit CL9) gegen 1600er mit CL7 auswechseln, dann ist dieser wieder schneller, obwohl er mit 1600MHz ja eigentlich eine geringere Frequenz kann als der 2133er. Aber der 2133 kann aufgrund des Controllers eben nicht mit 2133 betrieben werden, daher ist die CL-Zeit der entscheidende Wert.
Ich hoffe, ich habe für ein bisschen mehr Klarheit sorgen können?
//EDIT: Ach übrigens, auch bei den CL-Zeiten müssen sich beide Seiten einig sein. Und auch der Controller braucht seine Zeit, um ein Paket verarbeiten zu können. Wenn der Speicher also schneller Pakete zurückliefern könnte, als der Controller verarbeiten kann, wird es auch hier nicht mehr schneller. Dann "wartet" das Paket auf Auslieferung und braucht im Endeffekt doch mehr Zyklen bis zur Auslieferung. Nicht, weil der Speicher nicht schneller liefern konnte, sondern weil der Controller nicht früher ein neues Paket annehmen konnte. Dieses Minimum liegt bei den "2nd gen. core-i" bei 7 Zyklen bei 1066MHz, 9 Zyklen bei 1333MHz und 11 Zyklen bei 1600 MHz (sofern der Controller eben 1600MHz kann).
//EDIT2: Das Datenblatt war schon älter, damals gab es wohl noch keine Speicher mit geringeren CL-Zeiten, daher konnte man geringere einfach nur noch nicht testen. CL9 bei 1600MHz ist wohl inzwischen auch kein Problem, wo genau die Grenzen liegen, weiß ich nicht. Versuch macht kluch
