Dynamic Memory Page Migration via Adaptive Interrupt Thresholds

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computing systems, frequently accessed data in secondary memory is not efficiently migrated to primary memory with lower latency, leading to performance bottlenecks due to stale data in primary memory and inefficient interrupt generation rates.

Innovation Solution

A system with a request log and dynamic threshold adjustment mechanism, where a first processor generates interrupts for a second processor to migrate frequently accessed pages from secondary to primary memory based on access counts and interrupt rates, optimizing memory management and reducing stale data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is stored in secondary memory with lower latency access, then memory access speed is improved, but data becomes stale and infrequently accessed

Engineering Contradiction:
Improvememory access speedVSAvoiddata freshness
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system performs preliminary actions by proactively migrating frequently accessed data from secondary memory to primary memory before it becomes stale. The memory management unit monitors access patterns and initiates migrations in advance, ensuring that frequently accessed data remains in the faster primary memory while less frequently accessed data can be evicted.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts memory management policies based on real-time access patterns. The memory management unit continuously monitors which data is frequently accessed and dynamically migrates it between primary and secondary memory, adapting the memory hierarchy utilization to current workload conditions rather than using static allocation.

Inventive Principle:
Principle #15Dynamics

2Productivity

If frequent data migration from secondary to primary memory is performed, then processor performance is improved, but system complexity increases

Engineering Contradiction:
Improveprocessor performanceVSAvoidmemory management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The memory management unit performs self-service by autonomously monitoring access patterns and making migration decisions without requiring manual intervention or complex external control. The system automatically identifies frequently accessed data and initiates migrations based on predefined criteria, reducing the need for complex user-side management.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback mechanisms where the memory management unit continuously monitors data access patterns and uses this information to adjust migration strategies. Access count data provides feedback that informs subsequent migration decisions, creating a closed-loop system that adapts to changing workload patterns.

Inventive Principle:
Principle #23Feedback

3Reliability

If interrupt generation threshold is fixed, then system responsiveness is maintained, but interrupt rate becomes unbalanced and inefficient

Engineering Contradiction:
Improvesystem responsivenessVSAvoidinterrupt generation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The interrupt generation threshold is made dynamic rather than fixed. The memory management unit adjusts the threshold based on current system conditions, access patterns, and migration activity. This dynamic adjustment allows the system to optimize interrupt generation rates, reducing unnecessary interrupts during low-activity periods while maintaining responsiveness during high-activity periods.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of interrupt generation threshold based on workload conditions. By adjusting this parameter dynamically, the system can optimize the balance between responsiveness and interrupt efficiency, reducing the total number of interrupts while maintaining adequate system response to important events.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10310985B2Systems and methods for accessing and managing a computing system memory
Publication Date: 2019.06.04 ATI TECHNOLOGIES ULC
  • US10310985B2 patent drawing
  • US10310985B2 patent drawing
  • US10310985B2 patent drawing

AI summary

Systems, apparatuses, and methods for accessing and managing memories are disclosed herein. In one embodiment, a system includes at least first and second processors and first and second memories. The first processor maintains a request log with entries identifying requests that have been made to pages stored in the second memory. The first processor generates an indication for the second processor to process the request log when the number of entries in the request log reaches a programmable threshold. The second processor dynamically adjusts the programmable threshold based on one or more first conditions. The second processor also processes the request log responsive to detecting the indication. Additionally, the second processor determines whether to migrate pages from the second memory to the first memory based on one or more second conditions.