Dynamic Memory Management Mode Switching for Multilevel Hierarchy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processing systems with multilevel memory hierarchies face inefficiencies due to fixed memory management modes that do not adapt to changes in application phases, leading to suboptimal performance and flexibility.

Innovation Solution

Implementing a system where a processor dynamically reconfigures memory management modes based on application phases by monitoring phase changes and consulting a memory management policy to automatically adjust the configuration of memory modules, such as DRAM and NVRAM, to optimize their roles as hardware cache, system memory, or backing storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory management modes are fixed, then system stability is maintained, but processing efficiency deteriorates due to inability to adapt to application phase changes

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidadaptability to application phases
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic memory management by enabling the memory controller to automatically switch between different management modes (hardware cache mode, system memory mode, backing storage mode) based on detected application phases. This transforms the previously static memory configuration into a dynamic system that adapts its behavior according to workload characteristics, thereby resolving the contradiction between maintaining stability and achieving adaptability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes operational parameters by adjusting memory management modes in response to application phase transitions. The memory controller monitors application behavior and modifies memory allocation strategies, cache policies, and memory access patterns according to the current phase, enabling the system to optimize processing efficiency for different workload types without sacrificing overall stability.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If memory modules are dedicated to specific roles, then reliability is improved, but flexibility deteriorates due to inability to reconfigure for different workloads

Engineering Contradiction:
Improvememory configuration flexibilityVSAvoidmemory management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent makes memory modules universal by enabling them to perform multiple functions through automatic mode switching. The same physical memory modules can serve as hardware cache, system memory, or backing storage depending on the application phase, eliminating the need for dedicated memory regions for each function. This multi-functionality approach increases flexibility while the automated control mechanism manages the resulting complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The memory system implements self-service through automatic phase detection and mode switching. The memory controller autonomously monitors application behavior, detects phase transitions, and reconfigures memory management modes without requiring manual intervention or complex external control logic. This self-managing approach handles the complexity internally while presenting a simplified interface to the system.

Inventive Principle:
Principle #25Self-service

3Speed

If hardware cache size is increased, then processing speed is improved, but power consumption increases

Engineering Contradiction:
Improveprocessing speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The system dynamically adjusts the effective cache size by switching between hardware cache mode and system memory mode based on application phase characteristics. During compute-intensive phases, the system utilizes hardware cache to maximize processing speed. During I/O-bound or memory-intensive phases, the system transitions to system memory mode, effectively reducing the active cache footprint and associated power consumption, thus resolving the speed-power tradeoff.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The memory management system changes operational parameters by adjusting cache allocation and access policies according to application phase. The system modifies cache hit/miss handling, memory access patterns, and cache replacement policies to optimize the balance between processing speed and power consumption for different workload types, allowing flexible trade-offs between these competing objectives.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10318153B2Techniques for changing management modes of multilevel memory hierarchy
Publication Date: 2019.06.11 ADVANCED MICRO DEVICES INC
  • US10318153B2 patent drawing
  • US10318153B2 patent drawing
  • US10318153B2 patent drawing

AI summary

A processor modifies memory management mode for a range of memory locations of a multilevel memory hierarchy based on changes in an application phase of an application executing at a processor. The processor monitors the application phase (e.g., computation-bound phase, input/output phase, or memory access phase) of the executing application and in response to a change in phase consults a management policy to identify a memory management mode. The processor automatically reconfigures a memory controller and other modules so that a range of memory locations of the multilevel memory hierarchy are managed according to the identified memory management mode. By changing the memory management mode for the range of memory locations according to the application phase, the processor improves processing efficiency and flexibility.