Memory Controller Heatmaps for Resource Ranking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional memory systems face challenges in effective memory tracking due to high processing overhead and limited access to memory usage data, which restricts their ability to provide accurate and comprehensive memory usage information across multiple entities, leading to inefficiencies and limitations in memory resource management.

Innovation Solution

A memory controller system that generates and manages heatmaps for multiple accessing agents, enabling frequent and low-overhead access to memory usage data while preventing interference between agents, and evaluates metrics such as frequency, recency, and density to determine 'hotness' of memory segments, facilitating actions like migration and resource optimization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional systems scan usage data with high frequency to build comprehensive memory access history, then measurement precision of memory usage is improved, but processing overhead and loss of energy increase significantly

Engineering Contradiction:
Improvememory usage tracking accuracyVSAvoidprocessing overhead
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The patent creates simplified copies of memory access information in the form of heatmaps that are maintained by the memory controller. These heatmaps contain aggregated access patterns (read/write counts, access times) that provide sufficient information for memory management decisions without requiring full comprehensive tracking. Multiple accessing agents can read these copied heatmap structures simultaneously, enabling accurate memory usage measurement while avoiding the processing overhead of maintaining complete access histories for all agents.

Inventive Principle:
Principle #26Copying

2Ease of operation

If memory usage data is cleared after reading to enable multiple entities access, then ease of operation for multiple agents is improved, but reliability of tracked information deteriorates

Engineering Contradiction:
Improveaccessibility for multiple agentsVSAvoidaccuracy of memory usage data
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments memory access tracking information into separate heatmap structures for different accessing agents. Each agent has its own dedicated heatmap that records only its access patterns, allowing multiple agents to simultaneously access and read their respective heatmaps without interference or data clearing. This segmentation maintains the reliability and accuracy of tracked information for each agent while enabling concurrent access by multiple entities.

Inventive Principle:
Principle #1Segmentation

3Measurement precision

If comprehensive memory access history is maintained for all agents, then measurement precision is improved, but device complexity increases

Engineering Contradiction:
Improvecomprehensive tracking accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The memory controller maintains simplified copied representations of access patterns in heatmap structures rather than complete detailed histories. These heatmaps contain the essential information needed for memory management (access frequency, recency, density) in a compact format that reduces device complexity. Multiple agents can access these copied structures simultaneously without requiring complex coordination or large storage resources.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20250021248A1Managing and ranking memory resources
Publication Date: 2025.01.16 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20250021248A1 patent drawing
  • US20250021248A1 patent drawing
  • US20250021248A1 patent drawing

AI summary

The present disclosure relates to systems, methods, and computer-readable media for managing tracked memory usage data and performing various actions based on memory usage data tracked by a memory controller on a memory device. For example, systems described herein involve collecting and compiling data across one or more memory controllers to evaluate characteristics of the memory usage data to determine hotness metric(s) for segments of a memory resource. The systems described herein may perform a variety of segment actions based on the hotness metric(s). In addition, the systems described herein can compile the memory usage data according to one or more access granularities. This compiled data may further be shared with multiple accessing agents in accordance with access resolutions of the respective accessing agents.