Storage Class Memory Space Management via Slab Classes and DRAM Metadata Buffering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data storage management systems face bottlenecks due to slow hard disk drive (HDD) input/output performance and inefficient space management, particularly in storage class memory (SCM) where data is not byte-addressable like DRAM, leading to complex software system design and fragmentation issues.

Innovation Solution

A system and method for memory space management in SCM that divides the SCM space into a header area for metadata and a data area, using a slab class data structure with lists of page and slot identifiers to optimize storage allocation and access, allowing direct slot access without reading entire pages, and buffering metadata in DRAM to reduce unnecessary writes and metadata updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If the entire space is divided into fixed-size pages for HDD space management, then reading and writing operations can be standardized, but data access efficiency deteriorates because entire pages must be read or written even for single bit operations

Engineering Contradiction:
Improvestandardization of read/write operationsVSAvoiddata access efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent segments a data page into multiple fixed-size slots, allowing the system to allocate and access only the specific slots needed rather than entire pages. This segmentation enables fine-grained space management where individual slots can be independently accessed, resolving the contradiction between standardized operations and access efficiency.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If the Buddy System is used for DRAM space management to avoid page limitation and provide flexible space allocation, then space allocation flexibility improves, but system complexity increases due to the complex space management data structure that must be frequently modified

Engineering Contradiction:
Improvespace allocation flexibilityVSAvoidspace management data structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces slab classes that segment free space management into multiple fixed-size slots within pages. This approach provides flexible space allocation similar to the Buddy System but with simpler data structures, as slots are managed through fixed-size allocations rather than complex buddy tree structures that require frequent modification.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the management parameter from variable-sized blocks in the Buddy System to fixed-size slots organized in slab classes. This parameter change simplifies the data structure while maintaining allocation flexibility, reducing the complexity of space management operations.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If storage management metadata is stored only in SCM space, then storage consistency is maintained, but I/O performance deteriorates due to the need to read and write metadata from slow SCM storage

Engineering Contradiction:
Improvestorage consistencyVSAvoidmetadata access speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent introduces DRAM as an intermediary layer between the application and SCM storage for metadata management. The metadata is cached in fast DRAM memory, allowing rapid access and updates without directly accessing SCM storage. This intermediary layer maintains storage consistency while dramatically improving metadata access speed.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Speed

If SCM is used to replace HDD for persistency to overcome slow I/O performance, then storage speed improves, but byte-addressability capability deteriorates as SCM is not byte-addressable like DRAM

Engineering Contradiction:
Improvestorage speedVSAvoidbyte-addressability
Core Design Contradiction:
SpeedVSEase of operation

Solution Approach 1:

The patent segments SCM space into fixed-size slots that can be individually addressed and managed. This segmentation approach provides a form of addressability for SCM by creating discrete, manageable units within pages, making it easier to allocate and access specific storage locations while maintaining the speed benefits of SCM.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent replaces the byte-addressability mechanism of DRAM with a slot-based addressability system in SCM. Instead of addressing individual bytes, the system addresses fixed-size slots, which provides sufficient addressability for most applications while being adapted to SCM's architectural constraints.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS10198186B2Systems, methods and computer program products memory space management for storage class memory
Publication Date: 2019.02.05 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10198186B2 patent drawing
  • US10198186B2 patent drawing
  • US10198186B2 patent drawing

AI summary

Embodiments of the present invention provide a system, method and computer program products for memory space management for storage class memory. One embodiment comprises a method for information storage in an information technology environment. The method comprises storing data in a storage class memory (SCM) space, and storing storage management metadata corresponding to said data, in the SCM in a first data structure. The method further includes buffering storage management metadata corresponding to said data, in a main memory in a second data structure.