Praxistest: Memory Mirroring – Sicherheit versus Performance
Speicher-Benchmarks mit tecMem
Die Cache- und Speicher-Performance der Prozessoren beziehungsweise Hauptspeichers überprüfen wir mit unserem Programm tecMem aus der tecCHANNEL Benchmark Suite Pro. tecMem misst die effektiv genutzte Speicherbandbreite zwischen der Load/Store-Unit der CPU und den unterschiedlichen Ebenen der Speicherhierarchie (L1-, L2-Cache und RAM). Die Ergebnisse erlauben eine getrennte Analyse von Load-, Store- und Move-Operationen.
Konfiguration |
Load 32 [MByte/s] |
Store 32 [MByte/s] |
Move 32 [MByte/s] |
Load 64 [MByte/s] |
Store 64 [MByte/s] |
Load 128 [MByte/s] |
Store 128 [MByte/s] |
---|---|---|---|---|---|---|---|
Ohne Memory Mirroring |
2884 |
2944 |
2862 |
3585 |
2688 |
3710 |
2675 |
Mit Memory Mirroring |
2862 |
2948 |
2415 |
3567 |
2329 |
3700 |
2313 |
Erst bei 32-Bit-Move-Befehlen werden zwischen aktivierter und deaktivierter Memory-Mirroring-Funktion deutliche Leistungsunterschiede sichtbar. Die Differenz beträgt etwa 16 Prozent. Die Leistungswerte der 32-Bit-Load- und Store-Operationen bleiben nahezu unverändert. Hier scheint der Overhead die Speicher-Performance zu bremsen.
Anders als beim 32-Bit-Store-Kommando ändert sich beim 64-Bit- und 128-Bit-Store-Kommando aus den MMX- beziehungsweise SSE-Befehlssätzen der Speicherdurchsatz gravierend zugunsten des Hauptspeichers ohne Mirroring-Funktion. Die Leistungsunterschiede erreichen Werte von 15 und 14 Prozent. Dagegen beeinträchtigen die Load-Operationen bei Speicherspiegelung die Datengeschwindigkeit des Hauptspeichers nicht.