Tiered Memory Allocation Using SLA-Based Performance Prediction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face inefficiencies in managing large computations due to high costs and resource competition among memory devices with varying performance characteristics, leading to performance degradation and increased energy consumption.

Innovation Solution

A tiered memory system is implemented, where memory devices are organized based on characteristics like latency and throughput, with a memory manager allocating applications to tiers that satisfy service level agreements (SLA) while minimizing cost, using historical data and predicted performance to migrate data between tiers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If applications are allocated to higher performance memory tiers, then performance requirements are met, but cost and energy consumption increase

Engineering Contradiction:
Improveperformance requirement satisfactionVSAvoidenergy consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system dynamically changes the memory tier assignment parameter based on predicted application performance characteristics. By analyzing historical data and workload patterns, the system adjusts which memory tier (fast but expensive or slow but cheap) an application receives, optimizing the balance between meeting performance SLAs and minimizing energy consumption.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system uses feedback from historical performance data to improve future allocation decisions. By monitoring actual application performance and comparing it against predicted performance, the system refines its allocation algorithms to better match applications with appropriate memory tiers, reducing unnecessary energy consumption while maintaining SLA compliance.

Inventive Principle:
Principle #23Feedback

2Reliability

If applications are allocated to higher performance memory tiers, then performance requirements are met, but cost increases

Engineering Contradiction:
Improveperformance requirement satisfactionVSAvoidmemory resource allocation cost
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system dynamically changes the memory tier assignment parameter based on predicted application performance characteristics. By analyzing historical data and workload patterns, the system adjusts which memory tier (fast but expensive or slow but cheap) an application receives, optimizing the balance between meeting performance SLAs and minimizing energy consumption.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system uses feedback from historical performance data to improve future allocation decisions. By monitoring actual application performance and comparing it against predicted performance, the system refines its allocation algorithms to better match applications with appropriate memory tiers, reducing unnecessary energy consumption while maintaining SLA compliance.

Inventive Principle:
Principle #23Feedback

3Speed

If memory resources are allocated based on current performance characteristics, then allocation speed is fast, but accuracy of performance prediction is insufficient

Engineering Contradiction:
Improveallocation speedVSAvoidperformance prediction accuracy
Core Design Contradiction:
SpeedVSMeasurement precision

Solution Approach 1:

The system performs preliminary analysis of historical performance data before making allocation decisions. By pre-processing and analyzing patterns from past application executions, the system builds predictive models that enable accurate performance forecasting without slowing down the actual allocation process. The heavy lifting of analysis occurs beforehand, allowing fast real-time decisions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates virtual copies of historical performance data and uses these copies to train prediction models. Instead of re-analyzing raw historical data during each allocation decision, the system uses pre-processed copies and statistical models to quickly predict performance, separating the data processing workload from the decision-making process.

Inventive Principle:
Principle #26Copying

4Reliability

If data is migrated between memory tiers, then performance optimization is achieved, but system complexity increases

Engineering Contradiction:
Improveperformance optimizationVSAvoidmemory tier management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The memory management system performs self-service by automatically monitoring application performance and making migration decisions without external intervention. The system self-adjusts data placement across memory tiers based on predicted performance characteristics, reducing the need for manual configuration and simplifying operational complexity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements dynamic memory tier assignment where allocations can change over time based on evolving workload patterns. Rather than static long-term assignments, the system continuously adapts memory tier assignments to match changing performance requirements, using historical data to predict future needs and adjust allocations accordingly.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP4679251A1Systems and methods for tiered memory allocations
Publication Date: 2026.01.14 SAMSUNG ELECTRONICS CO LTD
  • EP4679251A1 patent drawingFigure 1
  • EP4679251A1 patent drawingFigure 2
  • EP4679251A1 patent drawingFigure 3

AI summary

Systems and methods for tiered memory allocations are disclosed. A system may include a first memory device; a second memory device; and a processor coupled to the first memory device and the second memory device. The processor may be configured to: identify a first application; identify a characteristic associated with the first memory device; estimate performance of the first application based on the characteristic associated with the first memory device; determine that the performance satisfies a threshold performance; and based on determining that the performance satisfies the threshold performance, allocate a region of the second memory device to the first application.