Opportunistic Analytics Using Unused Memory Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud computing systems face inflexibility in resource configuration and allocation, leading to underutilization of memory bandwidth due to fixed hardware configurations and limitations in scaling or descaling demands, resulting in poor resource utilization and increased costs.

Innovation Solution

A disaggregated computing system with a pool of memory and processor devices uses an iterative learning algorithm to define data boundaries for performing analytic functions on datasets, efficiently employing unused memory bandwidth by assigning memory devices to processor devices, thereby optimizing memory bandwidth and preventing underutilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If fixed hardware configurations are used in cloud computing systems, then resource allocation is simplified, but memory bandwidth utilization deteriorates due to underutilization

Engineering Contradiction:
Improveresource configuration flexibilityVSAvoidmemory bandwidth utilization
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The system dynamically allocates memory bandwidth by allowing processor devices to opportunistically access memory devices assigned to other processor devices when bandwidth is not currently committed to primary compute tasks. This dynamic sharing enables memory bandwidth utilization to adapt to varying workload demands, resolving the contradiction between fixed configuration simplicity and bandwidth utilization efficiency.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Memory devices are assigned to multiple processor devices, enabling each memory device to serve multiple purposes and multiple processors. This multi-functionality allows the same memory infrastructure to support both dedicated primary compute tasks and opportunistic analytics workloads, improving overall utilization without requiring separate dedicated resources for each function.

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

2Reliability

If memory bandwidth is dedicated to primary compute tasks, then compute task performance is maintained, but opportunistic analytics processing is prevented

Engineering Contradiction:
Improveprimary compute task performanceVSAvoidanalytics processing capability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system enables continuous useful action by allowing opportunistic analytics processing to occur during periods when memory bandwidth is not fully utilized by primary compute tasks. The iterative learning algorithm continuously monitors memory bandwidth availability and dynamically defines data boundaries, ensuring that analytics processing can continuously utilize available bandwidth without disrupting primary compute task performance.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The system performs self-service by using the same memory infrastructure to simultaneously support primary compute tasks and opportunistic analytics. The iterative learning algorithm automatically identifies and exploits unused memory bandwidth capacity, allowing the system to serve additional analytics workloads without requiring external resource allocation or disrupting existing compute tasks.

Inventive Principle:
Principle #25Self-service

3Loss of energy

If iterative learning algorithms are used to define data boundaries, then memory bandwidth utilization is improved, but system complexity increases

Engineering Contradiction:
Improvememory bandwidth efficiencyVSAvoidsystem control complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The iterative learning algorithm implements feedback by continuously monitoring memory bandwidth utilization and adjusting data boundary definitions based on observed usage patterns. This feedback mechanism allows the system to automatically adapt to changing workload conditions and optimize memory bandwidth allocation without requiring complex manual configuration or external control systems.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The iterative learning algorithm provides self-service functionality by autonomously defining data boundaries and managing memory bandwidth allocation based on observed usage patterns. This self-managing approach reduces the need for external system complexity while improving memory bandwidth efficiency through automated adaptation to workload conditions.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11275619B2Opportunistic data analytics using memory bandwidth in disaggregated computing systems
Publication Date: 2022.03.15 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11275619B2 patent drawing
  • US11275619B2 patent drawing
  • US11275619B2 patent drawing

AI summary

Respective memory devices are assigned to respective processor devices in a disaggregated computing system, the disaggregated computing system having at least a pool of the memory devices and a pool of the processor devices. An iterative learning algorithm is used to define data boundaries of a dataset for performing an analytic function on the dataset simultaneous to a primary compute task, unrelated to the analytic function, being performed on the dataset in the pool of memory devices using memory bandwidth not currently committed to the primary compute task, thereby efficiently employing the unused memory bandwidth to prevent underutilization of the pool of memory devices.