Hybrid Memory Data Placement for In-Memory Database Energy Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Enterprise systems face challenges in achieving energy efficiency and reducing latency due to the high static and dynamic energy consumption of DRAM, while non-volatile memory (NVM) offers scalability but with higher latency and dynamic energy costs, necessitating a hybrid memory system that optimally places data based on access patterns.

Innovation Solution

Implement a hybrid memory system that profiles application data to distinguish between sequential and random access patterns, using DRAM for sequential data and NVM for random data, with thresholds to determine optimal placement, thereby reducing energy consumption and latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is placed in DRAM for fast access, then access speed is improved, but energy consumption increases due to continuous leakage and refresh power

Engineering Contradiction:
Improvedata access speedVSAvoidstatic energy consumption
Core Design Contradiction:
SpeedVSUse of energy by stationary object

Solution Approach 1:

The patent segments the memory system into two distinct parts: DRAM for sequentially accessed data and NVM for randomly accessed data. This segmentation allows each memory type to be optimized for its specific access pattern, reducing overall energy consumption while maintaining fast access speeds for sequential operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by placing different types of data in different memory locations based on their access patterns. Sequentially accessed data is placed in DRAM with fast access characteristics, while randomly accessed data is placed in NVM with lower static power consumption, making each location's properties match the local access requirements.

Inventive Principle:
Principle #3Local quality

2Use of energy by stationary object

If data is placed in NVM for low static energy, then energy efficiency is improved, but access latency increases

Engineering Contradiction:
Improvestatic energy consumptionVSAvoidaccess latency
Core Design Contradiction:
Use of energy by stationary objectVSLoss of time

Solution Approach 1:

The patent segments data based on access patterns and places different segments in appropriate memory types. By identifying sequentially accessed data and placing it in DRAM, the system maintains fast access speeds for time-critical operations while using NVM only for data that can tolerate higher latency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary analysis of data access patterns before placing data in memory. By profiling applications to identify sequential versus random access patterns in advance, the system can make optimal placement decisions that minimize both energy consumption and access latency for each data type.

Inventive Principle:
Principle #10Preliminary action

3Speed

If all data is placed in DRAM for fast access, then access speed is improved, but energy consumption and cost increase

Engineering Contradiction:
Improvedata access speedVSAvoidtotal energy consumption
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The patent changes the placement parameter of data based on access patterns rather than using a uniform placement strategy. By dynamically determining whether data is sequentially or randomly accessed and adjusting its memory placement accordingly, the system optimizes the balance between speed and energy consumption.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces an intermediary profiling mechanism that analyzes application behavior and determines optimal data placement. This intermediary layer translates application access patterns into appropriate memory placement decisions, enabling the system to achieve fast access speeds where needed while conserving energy elsewhere.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Loss of energy

If hybrid memory system is implemented with selective data placement, then energy efficiency is improved, but system complexity increases

Engineering Contradiction:
Improveenergy consumptionVSAvoidmemory management complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent implements self-service by having the system automatically profile applications and determine optimal data placement without requiring manual intervention. The profiling mechanism autonomously analyzes access patterns and generates placement decisions, reducing the operational complexity of managing hybrid memory systems.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10387127B2Detecting sequential access data and random access data for placement on hybrid main memory for in-memory databases
Publication Date: 2019.08.20 SAP SE
  • US10387127B2 patent drawing
  • US10387127B2 patent drawing
  • US10387127B2 patent drawing

AI summary

Implementations of the present disclosure include methods, systems, and computer-readable storage mediums for providing intermediate code based on source code, the intermediate code including at least one instruction for profiling at least one object of the application, providing a statistics file by processing the intermediate code, the statistics file including data indicating, for each object of a plurality of objects, a SAC and a RAC, the SAC indicating a number of times a respective object was sequentially accessed and the RAC indicating a number of times a respective object was sequentially accessed during execution of the workload, providing a list of objects, the list of objects identifying, for each object, a memory type for placement of the object in a hybrid memory system based on the RAC of the respective object, and placing objects in a hybrid memory system during execution of the application based on the list of objects.