Die allgemeine Stammtisch-Meinung ist klar definiert: je mehr RAM, desto schneller ein System. Punkt. Doch
diese Aussage ist so nicht korrekt. Im Gegenteil: je mehr RAM ein System besitzt, desto größer wird die Wahrscheinlichkeit,
dass der Prozessor einen Cache-Miss landet. RAM ist im Vergleich zum integrierten Level-1- oder Level-2-Cache
eines Prozessors quälend langsam. Daher ist es für die Verarbeitungsgeschwindigkeit eines Programms positiv,
wenn die benötigten Daten möglichst immer im Puffer/Cache des Prozessors vorgehalten werden. Ideal wäre daher, wenn der Cache genauso
groß wäre, wie das RAM. Dann könnten alle Daten gepuffert werden. Da das logischerweise nicht geht, muss der
Cache eine Auswahl treffen, was gecached wird und was nicht. Daher gilt: je größer der Arbeitsspeicher,
desto häufiger liegt die Cacheverwaltung daneben.
Ferner: eine größere Menge an Arbeitsspeicher bedeutet unter Umständen
auch, dass das Mainboard die Speicher nicht mehr mit der selben Geschwindigkeit (Takt oder Timings) betreiben kann,
wie eine geringere Menge an Speicher. Warum? Weil die kapazitativen Lasten auf dem Speicherbus ansteigen je mehr
Speicher im System steckt. Höhere kapazitative Lasten bedeutet mehr Rauschen auf dem Speicherbus, bedeutet das
Signal wird schwächer bzw. undeutlicher. Um nach wie vor zuverlässig arbeiten zu können, muss unter Umständen
der Speichertakt reduziert werden oder die Speichertimings auf längere Zeiten eingestellt werden. Besonders
Systeme mit AMD K8-Prozessoren (Athlon oder Sempron Sockel 754) sind hier ab Werk besonders anfällig. Mehr dazu siehe
auch hier. Häufig muss im Sinne der Stabilität
auch von 1T Command Rate auf 2T zurück gegangen werden, was bei Bandwidth-Tests satte 350 MB/s je Speicher-Kanal
kostet. 'Mehr RAM' ist also nicht automatisch immer gleich 'schneller'.
Doch warum haben sich die Speichergrößen in den letzten Jahren immer wieder verdoppelt wenn's nichts bringt?
Der Grund ist ganz simpel: ist der Arbeitsspeicher voll, beginnen Betriebssysteme wie Windows oder Linux
sich eines so genannten Swapfiles zu bedienen. Ein Swapfile oder zu Deutsch "Auslagerungsdatei" hilft dem Betriebssystem,
Speicherengpässe zu überbrücken, indem einfach ein Teil der Daten oder der Programme aus dem Arbeitsspeicher auf
die Festplatte ausgelagert wird. Anschließend sind im RAM wieder ein paar Megabyte frei und es können weitere
Programme oder Daten geladen werden, obwohl bereits mehr geladen ist, als physikalisch in das RAM passen würde.
Die ganze Sache hat nur einen Haken: RAM arbeitet mit Zugriffszeiten im Nanosekunden-Bereich, eine Festplatte
dagegen benötigt etliche Millisekunden bis ein Zugriff erfolgen kann. Eine Festplatte ist also um den Faktor
Eine-Million langsamer, als RAM. Oder anders gesprochen: sobald das Betriebssystem anfangen muss, Daten/Programme
in das Swapfile auszulagern und wieder zurückzuholen, geht die Geschwindigkeit des Systems dramatisch in die Knie.
Und hier macht sich mehr RAM bemerkbar. Je mehr RAM im System stecken, desto mehr Programme/Daten passen in den
Arbeitsspeicher ohne dass das System sich der Auslagerungsdatei bedienen muss.
Ein weiterer nicht zu verachtender Vorteil von 'mehr RAM' ist der, dass moderne Betriebssysteme einen
Filesystem-Cache verwalten, häufig benötigte Daten oder Programme also nicht jedes Mal von der schneckenartig
arbeitenden Festplatte lesen müssen, sondern in einem Puffer vorrätig halten. Besonders auffällig kann
der positive Einfluss des Filesystem-Cache erfahren werden, wenn ein großes Programm wie etwa aus Microsoft Office
oder OpenOffice gestartet wird. Beim ersten Start dauert es noch ein paar Sekunden, bis die Eingabeoberfläche
zur Verfügung steht. Schließt man das Programm und öffnet es erneut, ist es blitzartig zur Stelle. Dieses Mal musste
es nicht mehr von der Festplatte gelesen werden, sondern konnte aus dem Cache geholt werden.
So weit zur Theorie. Um diese Aussagen in der Praxis zu bestätigen (oder zu widerlegen), haben wir einen
Benchmark-Parcours zusammen gestellt, der aus verschiedenen Disziplinen besteht. Wir werden Spiele-Benchmarks
haben, die zeigen sollen, ob sich die Frameraten ändern, wir haben Anwendungen, wir werden Dateien kopieren,
um den Cache zu fordern und wir werden Spiele-Levels laden, um zu sehen, wie sich mehr oder weniger starkes Auslagern
bemerkbar macht.
Diesen Artikel bookmarken oder senden an ...