Virtual Function Grouping for I/O Adapter QoS

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualized computing systems, managing virtual functions of input/output adapters to provide optimal quality of service (QoS) levels is challenging due to the dynamic distribution and redistribution of bandwidth allocations across multiple virtual functions, leading to inefficiencies in resource utilization and service levels.

Innovation Solution

A method and apparatus that identify allocations associated with each virtual function, determine ranges for groups based on these allocations, and distribute virtual functions among groups to ensure each group has at least one function, thereby optimizing bandwidth allocation and QoS levels by transferring functions from groups to corresponding categories at the input/output adapter.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If virtual functions are dynamically distributed across groups based on bandwidth allocations, then quality of service levels are optimized, but system complexity increases due to dynamic distribution and redistribution management

Engineering Contradiction:
Improvequality of service levelsVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments virtual functions into multiple groups based on bandwidth allocation ranges. Each group represents a segment of the virtual function space with specific allocation characteristics. This segmentation enables independent management and optimization of different virtual function subsets, improving QoS while maintaining manageable complexity through structured organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic distribution where virtual functions can be redistributed among groups based on changing bandwidth allocation requirements. The system continuously monitors and adjusts the grouping configuration, allowing virtual functions to move between groups as allocations change, thereby optimizing QoS levels adaptively without requiring complete system reconfiguration.

Inventive Principle:
Principle #15Dynamics

2Productivity

If virtual functions are redistributed to balance bandwidth allocations, then resource utilization improves, but time is lost due to distribution and transfer operations

Engineering Contradiction:
Improveresource utilizationVSAvoiddistribution time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by pre-calculating optimal group configurations based on bandwidth allocations before actual virtual function transfers occur. The system determines the target distribution state in advance, identifying which virtual functions should move between groups, and then executes the transfers efficiently. This reduces the overall time required by minimizing the decision-making phase during the actual redistribution operation.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If multiple groups are created to manage virtual functions, then bandwidth allocation flexibility increases, but the number of groups and management overhead increases

Engineering Contradiction:
Improvebandwidth allocation flexibilityVSAvoidnumber of groups
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent uses parameter changes by defining groups based on bandwidth allocation ranges rather than fixed virtual function assignments. The grouping criteria are based on configurable parameters such as minimum and maximum bandwidth thresholds. This allows the system to adjust the number and configuration of groups dynamically by changing these parameters, providing flexibility in bandwidth allocation without requiring a proportional increase in management complexity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9218219B2Managing virtual functions of an input/output adapter
Publication Date: 2015.12.22 TAIWAN SEMICONDUCTOR MANUFACTURING CO LTD
  • US9218219B2 patent drawing
  • US9218219B2 patent drawing
  • US9218219B2 patent drawing

AI summary

A computer implemented method may include identifying allocations for each virtual function of a plurality of virtual functions that are provided via an input/output adapter. The computer implemented method may further include determining a range associated with each group of a plurality of groups based on the identified allocations. The computer implemented method may also include associating each virtual function with a group of the plurality of groups based on the range associated with the group. Where at least one group of the plurality of groups is empty, and where one or more groups of the plurality of groups has two or more virtual functions associated with the one or more groups, the computer implemented method may include distributing the two or more virtual functions to the at least one empty group. The computer implemented method may further include transferring the plurality of virtual functions from each group to a corresponding category at the input/output adapter.