Separate Cache Servers for Dedicated Size Ranges
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Caching objects in slabs of fixed memory size leads to memory fragmentation inefficiencies and defragmentation overhead due to over-provisioning or misalignment with requested object sizes, resulting in wasted memory resources and costly object eviction.
Innovation Solution
Implementing separate cache servers dedicated to specific size ranges, with a mapping system that routes object requests to the appropriate server based on object size, eliminating the need for one-size-fits-all caching and minimizing defragmentation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If objects are cached in slabs of fixed memory size, then caching can be implemented with simple memory allocation, but memory fragmentation inefficiency and defragmentation overhead occur
Solution Approach 1:
The patent divides the caching system into multiple separate cache servers, each dedicated to storing objects within a specific size range. This segmentation allows each server to allocate memory more efficiently for its designated size range, reducing memory fragmentation compared to a single cache server using fixed-size slabs for all objects.
Solution Approach 2:
Each cache server is configured with memory allocation optimized for its specific size range, rather than using a uniform allocation strategy across all objects. This local optimization ensures that memory is efficiently utilized for each size category without the waste associated with over-provisioning fixed-size slabs.
2Device complexity
If fixed-size slabs are used for caching, then memory allocation is simplified, but defragmentation overhead increases
Solution Approach 1:
By segmenting the caching system into multiple servers handling different size ranges, the patent eliminates the need for frequent defragmentation operations that would be required in a single-cache system with fixed-size slabs. Each segmented server experiences less memory fragmentation and requires fewer defragmentation operations.
3Loss of energy
If separate cache servers are used for different size ranges, then memory efficiency is improved, but system complexity increases
Solution Approach 1:
The patent introduces a size-range mapping system that acts as an intermediary between object requests and the appropriate cache server. This mapping mechanism efficiently routes objects to the correct cache server based on size range, managing the complexity of multiple servers without significantly impacting overall system operation.
4Device complexity
If one-size-fits-all caching is used, then system architecture is simpler, but object eviction costs increase
Solution Approach 1:
The patent segments the caching system into multiple servers, each optimized for specific size ranges. This segmentation reduces object eviction costs by ensuring that objects are stored in appropriately-sized memory allocations, minimizing waste and improving cache utilization efficiency compared to a one-size-fits-all approach.
Data Source
AI summary
Cache servers can be dedicated to storing objects within certain size ranges such that each cache server is designated to store objects having a size within a particular size range that is different than the size range of objects to which at least one other cache server is designated to store. A memory device includes mappings between identifiers for objects and sizes of the objects. The mappings can be used to select a cache server from which to fetch a particular object to respond to a request for the particular object.


