Flexible Hardware Resource Assignment in Virtualized Processors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing virtualization models face inefficiencies in hardware resource utilization due to the need for multiple software drivers and complex coordination, leading to performance issues and increased costs from underutilized or overburdened hardware resources.

Innovation Solution

A method and system for flexibly assigning hardware resources to physical and virtual functions using a Resource Virtualization Unit (RVU) that allows for the abstraction of hardware resources, enabling efficient allocation and management of resources across multiple functional blocks, with administrative software defining and assigning local and virtual functions to physical functions, conforming to standard PCI software compatibility.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple software drivers are used to manage hardware resources for each guest, then hardware resource allocation can be achieved, but system complexity and coordination overhead increase significantly

Engineering Contradiction:
Improvehardware resource allocation capabilityVSAvoidsoftware driver complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges multiple software drivers into a single unified driver that manages all hardware resources for a guest. This consolidation eliminates the need for separate drivers for each functional block (FPA, SSO, PKO, etc.), reducing coordination overhead and system complexity while maintaining full hardware resource allocation capability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The unified driver is designed to perform multiple functions that previously required separate drivers. It can manage packet input, packet output, scheduling, synchronization, and memory allocation across all functional blocks within a single driver instance, making the system more adaptable without increasing complexity.

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

2Reliability

If hardware resources are dedicated to each software application, then performance is ensured, but hardware utilization efficiency decreases

Engineering Contradiction:
Improvesoftware application performanceVSAvoidhardware resource utilization efficiency
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments hardware resources into functional blocks (FPA, SSO, PKO, etc.) that can be dynamically allocated to different guests. Each guest receives the specific functional blocks it needs, ensuring performance requirements are met while avoiding allocation of unused resources, thus improving overall hardware utilization efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements dynamic resource allocation where the unified driver can assign and reassign functional blocks to different guests based on their current performance needs. This dynamic approach ensures that each application receives adequate resources for optimal performance while preventing waste when resources are not needed, resolving the contradiction between performance guarantee and utilization efficiency.

Inventive Principle:
Principle #15Dynamics

3Ease of operation

If functional blocks are statically assigned to guests, then resource management is simplified, but flexibility and scalability are reduced

Engineering Contradiction:
Improveresource management simplicityVSAvoidvirtualization flexibility
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The unified driver implements dynamic assignment of functional blocks to guests, allowing the system to adapt to changing requirements. Resources can be allocated, reallocated, or deallocated based on guest needs without requiring complex static configuration, maintaining ease of operation while significantly improving virtualization flexibility and scalability.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20240220309A1Flexible source assignment to physical and virtual functions in a virtualized processing system
Publication Date: 2024.07.04 MARVELL ASIA PTE LTD
  • US20240220309A1 patent drawing
  • US20240220309A1 patent drawing
  • US20240220309A1 patent drawing

AI summary

A method and system for flexibly assigning hardware resources to physical and virtual functions in a processor system supporting hardware virtualization is disclosed. The processor system includes a resource virtualization unit which is used to flexibly assign hardware resources to physical functions and also flexibly assign local functions to virtual functions associated with one or more of the physical functions. Thereby, standard PCI software is compatible with the physical functions and any associated virtualized hardware resources that have been flexibly assigned to the virtual and local functions.