Granular Storage Tier Pinning for Memory Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional computer memory management techniques rely on moving data into main memory for processing, which becomes inefficient as data volumes rise, and fail to account for the varying importance of data elements, leading to potential performance and cost issues.

Innovation Solution

Implementing a system that allows specific data elements to be 'pinned' to either transitory (RAM) or non-transitory (SSD) storage media, preventing swapping between tiers during application execution, with configuration options at various levels, including API-manipulated pinning flags for dynamic management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is moved into main memory for processing, then access speed is improved, but memory cost and complexity increase as data volumes rise

Engineering Contradiction:
Improvedata access speedVSAvoidmemory management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent segments data into different tiers based on importance and access patterns. Critical data elements are pinned to main memory while less critical data resides in external storage, creating a hierarchical memory architecture that balances speed and complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different data elements receive different treatment based on their specific characteristics. The pinning mechanism allows individual data elements or sets to be assigned to specific storage locations (pinned or unpinned) based on their importance, access frequency, and criticality to the application

Inventive Principle:
Principle #3Local quality

2Speed

If more data is stored in main memory, then processing speed is improved, but cost increases

Engineering Contradiction:
Improveprocessing speedVSAvoidmemory capacity
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The system performs preliminary classification of data elements before processing, identifying which data should be pinned to memory in advance. This allows the application to maintain only the necessary amount of critical data in expensive main memory while keeping less critical data in cheaper external storage

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the storage location parameter for specific data elements from the default external storage to main memory through the pinning mechanism. This selective parameter change ensures that only data requiring fast access occupies expensive memory resources

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If automatic spill-over to disk is implemented, then memory elasticity is improved, but application control over memory strategy is reduced

Engineering Contradiction:
Improvememory elasticityVSAvoidapplication control
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The system combines automatic and manual control dynamically. The unpinned data follows automatic spill-over behavior for memory elasticity, while pinned data maintains fixed locations. The pinning state can be changed at runtime through API calls, allowing dynamic adaptation to changing application needs

Inventive Principle:
Principle #15Dynamics

4Device complexity

If all data is treated equally in memory management, then simplicity is maintained, but performance optimization is lost

Engineering Contradiction:
Improvememory management simplicityVSAvoidapplication performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent applies different memory management policies to different data elements based on their local characteristics. The pinning attribute allows individual data elements or sets to be marked for special treatment, enabling performance optimization without requiring complete redesign of the memory management system

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9830356B2Systems and/or methods for enabling storage tier selection and usage at a granular level
Publication Date: 2017.11.28 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9830356B2 patent drawing
  • US9830356B2 patent drawing
  • US9830356B2 patent drawing

AI summary

Certain example embodiments relate to memory management techniques that enable users to “pin” elements to particular storage tiers (e.g., RAM, SSD, HDD, tape, or the like). Once pinned, elements are not moved from tier-to-tier during application execution. A memory manager, working with at least one processor, receives requests to store and retrieve data during application execution. Each request is handled using a non-transitory computer readable storage medium (rather than a transitory computer readable storage medium), if the associated data is part of a data cache that is pinned to the non-transitory computer readable storage medium, or if the associated data itself is pinned to the non-transitory computer readable storage medium. If neither condition applies, the memory manager determines which one of the non-transitory and the transitory computer readable storage mediums should be used in handling the respective received request, and handles the request accordingly.