Memory Access Trackers for Hotness Monitoring Across Address Ranges
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory devices face challenges in efficiently tracking and managing memory access frequencies with varying access patterns and overlapping address ranges, which complicates system resources and adherence to emerging industry standards like CXL, particularly in logical device fabric-attached memory (LD-FAM) devices.
Innovation Solution
Implementing a memory device with multiple concurrent access trackers, such as a counting bloom filter (CBF), cache-based tracker (CBT), and sorted look-up table (SLT), to dynamically monitor memory access hotness with tailored configurations for overlapping or non-overlapping address ranges, optimizing memory tiering and workload profiling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a single access tracker is used to monitor memory access frequency, then system complexity is reduced, but the ability to handle varying access patterns and overlapping address ranges is insufficient
Solution Approach 1:
The patent divides the memory address space into multiple segments, each monitored by a dedicated access tracker instance. Each tracker is configured with specific address ranges and tracking parameters, allowing the system to handle diverse access patterns simultaneously while keeping each individual tracker relatively simple.
Solution Approach 2:
The access tracking system is designed to support multiple tracker instances with configurable parameters, enabling a single system to perform multiple tracking functions simultaneously. The system can adapt to different access patterns, address ranges, and monitoring requirements through parameter configuration rather than requiring separate dedicated hardware for each function.
2Measurement precision
If multiple access trackers are implemented to monitor overlapping address ranges, then tracking precision and granularity are improved, but system resource consumption increases
Solution Approach 1:
Different regions of the memory address space are monitored with different levels of granularity and by different tracker instances. Each tracker is configured with specific address ranges and tracking parameters optimized for its local region, allowing high precision where needed while conserving resources in other areas.
Solution Approach 2:
The system implements multiple tracker instances that may track overlapping address ranges, providing redundant monitoring for critical regions. This partial excess action ensures high tracking precision for important memory areas while the configurable nature allows resource consumption to be managed by adjusting the number and scope of active trackers.
3Adaptability or versatility
If access trackers are configured for different address ranges with overlapping regions, then coverage of varying access patterns is improved, but configuration complexity increases
Solution Approach 1:
The access tracking system allows dynamic configuration of tracker parameters including address ranges, granularities, and tracking thresholds. Trackers can be enabled or disabled, and their parameters can be adjusted based on observed access patterns, allowing the system to adapt to varying workloads without requiring complex static configuration for all possible scenarios.
Data Source
AI summary
In some implementations, a memory device may configure multiple access trackers to track accesses to a memory, including a counting bloom filter access tracker associated with a first memory address range, a cache-based tracker access tracker associated with a second memory address range, and a sorted look-up table access tracker associated with a third memory address range. The memory device may receive an access request indicating a memory address to be accessed and may determine that the memory address is within at least one of the first, second, or third memory address range. The memory device may determine one or more unit identifiers associated with the memory address, may identify one or more access trackers that are associated with the one or more unit identifiers, and may update one or more counters associated with the one or more access trackers, accordingly.


