Persistent Memory Manager for Multi-Node Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Multi-node computer systems face inefficiencies due to the need to reload data for each new application, as existing technologies lack effective methods for managing persistent memory, leading to reduced system performance and resource utilization.

Innovation Solution

A PM Manager is introduced to create and manage pools of persistent memory, working with the operating system kernel to preserve data across applications and dynamically adjust memory allocation based on historical use or administrator input, ensuring data continuity and efficient resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the TLB and local memory are cleared for each new application, then the system can ensure clean state and avoid data conflicts, but data must be re-loaded from bulk storage which consumes significant system resources and reduces efficiency

Engineering Contradiction:
Improvedata integrityVSAvoidsystem efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The memory space is segmented into persistent memory regions and volatile memory regions. Persistent memory retains data across application executions while volatile memory is cleared. This segmentation allows the system to maintain data integrity in persistent memory while clearing only the necessary volatile memory, avoiding the need to reload all data from bulk storage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Data is preserved in persistent memory during the first application execution, preparing it for use by subsequent applications. This preliminary action of preserving data eliminates the need for re-loading from bulk storage for each new application, thereby improving system efficiency while maintaining data availability.

Inventive Principle:
Principle #10Preliminary action

2Loss of information

If data is saved to bulk storage and re-loaded for each application, then data can be preserved between applications, but this process requires significant computer system resources and time

Engineering Contradiction:
Improvedata preservationVSAvoiddata loading time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The invention extracts the data preservation function from bulk storage operations and implements it directly in memory through persistent memory regions. By taking out the dependency on bulk storage for data preservation, the system eliminates the time-consuming read/write cycles to hard drives while maintaining data availability across applications.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of copying data to and from bulk storage for each application, the system creates a persistent copy of data in memory that survives across application executions. This copying approach maintains data preservation without the performance penalty of repeated bulk storage transfers.

Inventive Principle:
Principle #26Copying

3Productivity

If persistent memory is implemented to preserve data across applications, then system efficiency improves, but the complexity of managing memory pools and allocation increases

Engineering Contradiction:
Improvesystem efficiencyVSAvoidmemory management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The persistent memory manager implements a universal memory management mechanism that handles multiple functions: data preservation, memory allocation, and application loading. By making the memory management system multi-functional, the invention reduces the need for separate complex subsystems and simplifies overall architecture while maintaining high system efficiency.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS8812818B2Management of persistent memory in a multi-node computer system
Publication Date: 2014.08.19 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8812818B2 patent drawing
  • US8812818B2 patent drawing
  • US8812818B2 patent drawing

AI summary

A method and apparatus creates and manages persistent memory (PM) in a multi-node computing system. A PM Manager in the service node creates and manages pools of nodes with various sizes of PM. A node manager uses the pools of nodes to load applications to the nodes according to the size of the available PM. The PM Manager can dynamically adjust the size of the PM according to the needs of the applications based on historical use or as determined by a system administrator. The PM Manager works with an operating system kernel on the nodes to provide persistent memory for application data and system metadata. The PM Manager uses the persistent memory to load applications to preserve data from one application to the next. Also, the data preserved in persistent memory may be system metadata such as file system data that will be available to subsequent applications.