Selective Memory Mirroring for Flexible Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems in computing devices often dedicate half of their memory space to mirroring, which limits the availability of memory for other uses and does not allow for flexible selection of which data portions to mirror, leading to inefficient use of resources.

Innovation Solution

Implementing selective memory mirroring where only specific portions of data can be copied and stored in a secondary memory bank, allowing unused memory space to be utilized for other purposes while ensuring data redundancy and error recovery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory space is dedicated to mirroring, then data redundancy and error recovery capabilities are improved, but available memory for other uses is reduced

Engineering Contradiction:
Improvedata redundancy and error recovery capabilitiesVSAvoidavailable memory for other uses
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments memory mirroring from a system-wide mandatory feature to a selective feature applied only to specific memory regions. The memory system is divided into mirrored and non-mirrored portions, allowing different reliability levels for different data types. This enables partial mirroring where only critical data receives redundancy protection, resolving the contradiction by maintaining reliability for essential data while freeing memory for other uses.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local quality by applying mirroring selectively to specific memory regions based on their importance. Different memory regions can have different mirroring configurations - critical system data receives full mirroring protection while less critical data uses no mirroring. This localized approach optimizes the balance between reliability and available memory by tailoring redundancy to actual data requirements rather than applying uniform protection across all memory.

Inventive Principle:
Principle #3Local quality

2Reliability

If memory mirroring is implemented for all data, then data protection is improved, but memory flexibility and resource allocation are reduced

Engineering Contradiction:
Improvedata protectionVSAvoidmemory flexibility and resource allocation
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces dynamic memory mirroring where the mirroring configuration can change based on system conditions and data requirements. Memory regions can be dynamically assigned to mirrored or non-mirrored states, and the mirroring ratio can be adjusted over time. This dynamic approach resolves the contradiction by allowing the system to adapt memory allocation to changing needs, providing both protection when required and flexibility when possible.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of mirroring from a binary all-or-nothing setting to a configurable parameter with multiple levels. Users can specify the percentage or amount of memory to be mirrored, and the system can adjust mirroring parameters based on workload, available memory, and data criticality. This parameterization resolves the contradiction by enabling fine-tuned control that balances protection and flexibility according to specific operational requirements.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7949850B2Methods and appratus for demand-based memory mirroring
Publication Date: 2011.05.24 INTEL CORP
  • US7949850B2 patent drawing
  • US7949850B2 patent drawing
  • US7949850B2 patent drawing

AI summary

A method includes determining an amount of memory space in a memory device available for memory mirroring. The method further includes presenting the available memory space to an operating system. The method further includes selecting at least a portion of the amount of memory space to be used for memory mirroring with the operating system. The method further includes adding a non-selected portion of the available memory to memory space available to the operating system during operation. An associated system and machine readable medium are also disclosed.