Virtualized CPU Resource Allocation for Cloud Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cloud computing systems inefficiently allocate and track CPU accelerator resources, leading to suboptimal performance and inaccurate usage tracking for customers, as they often allocate resources without considering specific task requirements and fail to differentiate between users of accelerator resources and those who do not need them.

Innovation Solution

The system virtualizes CPU and on-chip enhanced CPU resources, using a virtualized-resource matching operation to allocate resources based on task requirements, ensuring that appropriate resources are allocated and usage is accurately tracked, thereby improving performance and efficiency by matching tasks with the necessary resources and preventing resource misuse.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If CPU accelerator resources are allocated without virtualization and task-specific matching, then resource allocation is simple and fast, but resource utilization efficiency deteriorates and task performance suffers

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidresource allocation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments CPU resources into virtualized CPU instances and virtualized accelerator instances, creating distinct allocable units. This segmentation enables fine-grained resource allocation where different virtualized components can be independently assigned to different tasks based on specific requirements, thereby improving resource utilization efficiency without requiring complete redesign of the allocation system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a resource allocation system that acts as an intermediary between physical CPU resources and tasks. This intermediary virtualizes the resources and performs matching operations to allocate appropriate virtualized CPU instances and accelerator instances to tasks, simplifying the complexity by providing an automated mediation layer rather than direct management.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If general-purpose CPU resources are allocated to all tasks regardless of specific needs, then allocation process is straightforward, but task performance deteriorates due to mismatched resource capabilities

Engineering Contradiction:
Improvetask performance reliabilityVSAvoidresource tracking complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments CPU functionality into distinct virtualized instances including virtualized CPU instances and virtualized on-chip enhanced CPU instances. This segmentation allows the system to track and allocate specific functional capabilities to tasks, ensuring that tasks receive appropriate resource types (e.g., accelerator resources for compute-intensive tasks) thereby improving performance reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter of resource allocation from generic CPU allocation to specific virtualized resource allocation with enabled/disabled functionality states. By virtualizing resources and tracking their specific capabilities and usage states, the system can match task requirements with appropriate resource parameters, improving reliability while managing complexity through structured parameter tracking.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If accelerator resources are shared without virtualization, then hardware cost is reduced, but resource allocation accuracy deteriorates and usage tracking becomes unreliable

Engineering Contradiction:
Improveusage tracking precisionVSAvoidvirtualization overhead
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts the tracking and allocation logic from the physical hardware layer and places it in the virtualization layer. By virtualizing accelerator resources and creating separate virtualized instances, the system can precisely track usage at the software level without requiring additional physical tracking hardware, thereby achieving measurement precision while managing virtualization overhead through efficient software-based management.

Inventive Principle:
Principle #2Taking out (Extraction)

4Adaptability or versatility

If physical hardware is used without virtualization to minimize overhead, then system simplicity is maintained, but resource allocation flexibility and adaptability deteriorate

Engineering Contradiction:
Improveresource allocation adaptabilityVSAvoidsystem architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal virtualization layer that can allocate different types of resources (CPU instances, accelerator instances, enhanced CPU instances) to various tasks based on their specific requirements. This universal approach provides adaptability and versatility, allowing the same infrastructure to serve multiple different task types and workloads, while managing architecture complexity through a unified virtualization framework.

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

Data Source

PatentUS20240311169A1Resource allocation using virtualized enhanced resources
Publication Date: 2024.09.19 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US20240311169A1 patent drawing
  • US20240311169A1 patent drawing
  • US20240311169A1 patent drawing

AI summary

Embodiments of the invention provide a computer system that includes a central processing unit (CPU) associated with a host computer. The CPU includes CPU functionality and on-board enhanced CPU functionality. The CPU further includes a virtualized first instance of the CPU comprising an enabled virtualized first instance of the CPU functionality; and a non-enabled virtualized first instance of the on-chip enhanced CPU functionality. The CPU further includes a virtualized second instance of the CPU comprising an enabled virtualized second instance of the CPU functionality; and an enabled virtualized second instance of the on-chip enhanced CPU functionality.