本文将mark下Memory Mirroring相关notes。

Memory Mirroring

The Intel Xeon processor family-based platform offers a RAS (Reliability Availability Serviceability) feature called Memory Mirroring. This feature allows users to configure the memory in a highly reliable mode such that system uptime can be maintained—even when a memory component is affected by an uncorrectable fault. When enabled, a trade-off between memory capacity and reliability is required. For example, user-accessible memory may be reduced to half of the total available memory.

Address Range Partial Memory Mirroring

The Intel Xeon processor E7 v3 product family-based platform introduces a new layer of support for partial memory mirroring called Address Range Mirroring. When Address Range Mirroring is used, the platform allows an OS to specify a subset of total available memory for mirroring (and also to optionally specify whether to mirror the range 0–4 GB). This capability allows a user to make an appropriate trade-off between non-mirrored memory range and mirrored memory range, thus optimizing total available memory while keeping highly reliable memory range available for mission-critical workloads and/or kernel space.

Legacy memory mirroring is transparent to the OS; however, address range mirroring requires a firmware-OS interface for a user to specify the desired subset of memory to mirror. To fully utilize Address Range Mirroring:

  • Present partial or total mirrored memory on the platform to the OS.
  • Provide the OS a method to request the amount of mirrored memory that takes effect on subsequent boots.

总结

  1. Legacy Memory Mirroring是将所有内存都做mirror,因而available memory会减半
  2. Address Range Partial Memory Mirroring是选择部分内存做mirror

参考资料:

  1. Address Range Partial Memory Mirroring