Dynamic Cloud Compute Management via FPGA Reconfiguration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing amounts of data processed by computing systems lead to inefficiencies in resource utilization and cost management, particularly in cloud computing environments, where variable costs and inefficient capital utilization are prevalent, and managing large metadata and data sets becomes a bottleneck.

Innovation Solution

A memory and compute management device that acts as a gateway for dynamic capacity provisioning in cloud environments, utilizing reconfigurable processing elements like FPGAs and substantial memory to optimize storage and compute operations, allowing for transparent management of data and compute resources, and intelligent scaling of resources based on demand.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Power

If cloud computing resources are used to process large amounts of data, then computational capacity is improved, but variable costs increase

Engineering Contradiction:
Improvecomputational capacityVSAvoidvariable costs
Core Design Contradiction:
PowerVSLoss of energy

Solution Approach 1:

The system dynamically provisions and deprovisions cloud computing resources based on real-time workload demands. The orchestrator monitors resource utilization metrics and automatically scales compute, storage, and networking resources up or down to match actual needs, ensuring high computational capacity during peak loads while minimizing resource consumption and costs during low-utilization periods.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes operational parameters such as instance types, storage configurations, and networking settings based on workload characteristics. By analyzing job requirements and historical performance data, the orchestrator selects optimal resource configurations that balance computational power with cost efficiency, adjusting parameters like virtual CPU counts, memory allocation, and storage IOPS to match actual demand.

Inventive Principle:
Principle #35Parameter changes

2Speed

If data is stored locally in memory devices, then I/O performance is improved, but capital utilization efficiency worsens

Engineering Contradiction:
ImproveI/O performanceVSAvoidcapital utilization efficiency
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The system segments data storage across multiple tiers including high-speed local memory devices for frequently accessed data and lower-cost remote cloud storage for less frequently accessed data. The intelligent caching layer automatically segments and relocates data between tiers based on access patterns, ensuring that hot data resides in fast local storage while cold data is moved to cheaper remote storage, optimizing both I/O performance and capital utilization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces an intelligent caching layer and data management orchestrator as intermediaries between applications and storage resources. This intermediary layer transparently manages data placement, caching, and retrieval across hybrid storage environments, allowing applications to access data with near-local-speed performance while the orchestrator optimizes capital utilization by placing data appropriately across different storage tiers based on access frequency and cost considerations.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If fixed infrastructure is provisioned for peak capacity, then reliability is improved, but capital efficiency worsens

Engineering Contradiction:
Improvesystem reliabilityVSAvoidcapital efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system transitions from static fixed infrastructure provisioning to dynamic resource allocation that automatically adjusts capacity based on real-time demands. The orchestrator continuously monitors workload patterns and scales resources up during peak periods and down during low-utilization periods, maintaining system reliability when needed while eliminating the waste of over-provisioned idle capacity, thereby improving capital efficiency without sacrificing reliability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system creates a universal hybrid infrastructure that can serve multiple workloads and functions across different capacity requirements. By pooling resources across on-premises and cloud environments, the system enables a single infrastructure to handle varying workload types and intensity levels, allowing the same physical resources to be shared across multiple applications and functions, thus improving both reliability and capital efficiency.

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

4Adaptability or versatility

If reconfigurable processing elements are used, then adaptability is improved, but device complexity increases

Engineering Contradiction:
Improveprocessing adaptabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system introduces a software orchestrator and abstraction layers as intermediaries that manage the complexity of reconfigurable processing elements. This intermediary software layer handles the intricate tasks of resource provisioning, configuration management, and orchestration, shielding users and applications from the underlying complexity while enabling flexible adaptation to different workload requirements through standardized interfaces and automated management.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10574734B2Dynamic data and compute management
Publication Date: 2020.02.25 RAMBUS INC
  • US10574734B2 patent drawing
  • US10574734B2 patent drawing
  • US10574734B2 patent drawing

AI summary

Methods and systems for managing data storage and compute resources. The data can be stored a multiple locations allowing compute operations to be performed in a distributed manner in one or more locations. The cloud storage and cloud compute resources can be dynamically scaled based on the locations of the data and based on the cloud storage and/or cloud computing budgets. Dynamic reconfiguration of reconfigurable processors (e.g., FPGA) can further be used to accelerate compute operations.