Incoherent Memory Emulation for Software Coherency Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current implementations of memory devices in virtualized environments fail to accurately test software coherency primitives due to the masking effect of hardware coherency, leading to potential failures in physical multi-server shared memory environments where hardware-based coherency is absent.

Innovation Solution

A methodology is developed to emulate incoherent memory behavior by storing data to a first memory copy location, copying it to a shared memory location, and duplicating it to a second memory copy location, allowing for the detection of errors in software coherency primitives and ensuring their correct execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If hardware coherency is used in virtualized environments, then memory access simplicity is improved, but testing accuracy of software coherency primitives deteriorates

Engineering Contradiction:
Improvememory access simplicityVSAvoidtesting accuracy of software coherency primitives
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The patent introduces a coherency emulation layer that acts as an intermediary between the virtualized environment and the software coherency primitives. This emulation layer selectively enables or disables hardware coherency based on testing requirements, allowing accurate testing of software coherency primitives while maintaining ease of operation in production environments.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system dynamically adjusts the coherency behavior of the emulation layer based on the testing context. When testing software coherency primitives, the emulation layer disables hardware coherency to create incoherent conditions. When not testing, it enables hardware coherency for simple memory access, thus adapting to different operational requirements.

Inventive Principle:
Principle #15Dynamics

2Measurement precision

If hardware coherency is disabled to test software coherency primitives, then testing accuracy is improved, but system complexity increases

Engineering Contradiction:
Improvetesting accuracy of software coherency primitivesVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The coherency emulation layer serves as an intermediary that manages the complexity of disabling and enabling hardware coherency. It provides a unified interface for testing software coherency primitives without requiring changes to the underlying hardware or virtualization infrastructure, thus containing system complexity within a manageable layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The emulation layer creates a virtual copy of the memory coherency behavior that can be independently controlled. This copy allows testing of software coherency primitives in isolation from the actual hardware coherency mechanisms, reducing system complexity by separating testing concerns from production concerns.

Inventive Principle:
Principle #26Copying

3Productivity

If software coherency primitives are tested in hardware-coherent environments, then resource utilization is improved, but testing reliability deteriorates

Engineering Contradiction:
Improveresource utilizationVSAvoidtesting reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The emulation layer dynamically switches between hardware-coherent and hardware-incoherent modes based on testing requirements. This allows resource utilization to be optimized in production environments while ensuring testing reliability when needed, resolving the contradiction between productivity and testing reliability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary configuration of the emulation layer to establish the appropriate coherency mode before testing begins. This preliminary action ensures that the testing environment is properly prepared with the correct coherency settings, thereby ensuring testing reliability without compromising resource utilization in production.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250378030A1Techniques and systems for emulating incoherent memory
Publication Date: 2025.12.11 MICRON TECHNOLOGY INC
  • US20250378030A1 patent drawing
  • US20250378030A1 patent drawing
  • US20250378030A1 patent drawing

AI summary

In some implementations, an emulation system may store a set of data to a first memory copy location of an emulated environment that is associated with a first virtual host system. The emulation system may copy the set of data from the first memory copy location to a shared memory location of the emulated environment. The emulation system may copy the set of data from the shared memory location to a second memory copy location of the emulated environment that is associated with a second virtual host system. The emulation system may load the set of data from the second memory copy location.