Cache Management via Eviction Count Block Selection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computing systems face bottlenecks in throughput and high costs for managing high volumes of data, particularly in big data analysis and web caching, as existing solutions fail to efficiently manage cache memory and reduce costs while improving performance.
Innovation Solution
A computing system with a memory storage unit configured as a cache that identifies and evicts key-value pairs based on an eviction policy, calculates an eviction count, and selects an erase block for memory blocks with the highest count, optimizing cache management through a device control unit.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional cache management methods are used, then system cost is reduced, but throughput and IOPS performance deteriorate
Solution Approach 1:
The patent segments the cache management process into distinct components: a registry for tracking key-value pairs, an eviction policy module for selecting candidates, and a block selection module for identifying erase targets. This segmentation allows each component to operate independently and efficiently, improving overall throughput while maintaining manageable complexity.
Solution Approach 2:
The patent implements preliminary action by maintaining a registry that pre-identifies eviction candidates before actual eviction is needed. The registry tracks key-value pairs and their associated blocks in advance, allowing the system to quickly select eviction targets when cache capacity is reached, thereby improving response time and throughput without adding significant management complexity.
2Quantity of substance
If more memory blocks are used to increase cache capacity, then data storage capability is improved, but erase operation overhead and cost increase
Solution Approach 1:
The patent changes the parameter of block selection by using an eviction count metric to identify the optimal erase block. Instead of arbitrarily selecting blocks for erasure, the system calculates an eviction count for each block based on the number of eviction candidates it contains, and selectively erases the block with the highest count. This parameter change reduces unnecessary erase operations and associated overhead while maintaining adequate cache capacity.
Solution Approach 2:
The patent implements discarding and recovering by selectively erasing only those memory blocks that contain the highest concentration of eviction candidates. This targeted approach discards data that is least likely to be needed (based on eviction policy criteria) while preserving blocks with valuable data, thereby reducing erase operation overhead and extending memory lifespan without compromising cache capacity.
3Reliability
If frequent cache evictions are performed to maintain cache efficiency, then cache hit rate is improved, but system performance and throughput deteriorate
Solution Approach 1:
The patent implements feedback by continuously monitoring the registry for eviction candidates and using this information to guide block selection for erasure. The eviction count metric provides feedback on which blocks are most suitable for erasure, allowing the system to perform evictions in a manner that maintains cache efficiency while minimizing performance impact. This feedback mechanism ensures that evictions are performed strategically rather than frequently and randomly.
Solution Approach 2:
The patent uses preliminary action by pre-identifying and tracking eviction candidates in the registry before actual eviction operations are performed. This advance identification allows the system to batch and optimize erase operations, reducing the frequency and overhead of individual eviction operations while maintaining cache efficiency through proactive management of candidate blocks.
Data Source
AI summary
A computing system includes a memory storage unit, having memory blocks, configured as a memory cache to store values of key-value pairs; and a device control unit, coupled to the memory storage unit, configured to: identify eviction targets from key-value eviction candidates in a key-value registry based on an eviction policy; calculate an associated eviction count of associated eviction candidates within the same instance of the memory blocks as the eviction targets; select an erase block as the memory blocks associated with the highest value of the associated eviction count; and interface with the memory storage unit to perform an erase operation on the erase block.


