GPU Virtual Function State Modification in Single-Mode

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing SR-IOV implementation on GPUs incurs unnecessary overhead due to the isolation policy, which prevents virtual functions from modifying the GPU state, even when operating in single-VF mode.

Innovation Solution

The system allows a virtual function (VF) to modify the state of a GPU by determining the operating mode, enabling interrupts and state modifications in single-VF mode, and disabling them in multi-VF mode, thereby reducing overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the isolation policy is enforced to prevent VFs from modifying GPU state, then security and integrity are improved, but overhead increases due to handshake requirements

Engineering Contradiction:
ImproveGPU state integrityVSAvoidhandshake overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system dynamically adjusts the isolation policy based on the operational mode. In single-VF mode, the isolation policy is relaxed to allow direct state modification without handshake overhead. In multi-VF mode, the strict isolation policy with handshake requirements is enforced to maintain GPU state integrity. This dynamic adaptation resolves the contradiction by making the security measure conditional rather than absolute.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of isolation policy strictness based on the number of active VFs. When operating in single-VF mode, the isolation parameter is adjusted to permit direct state modifications. When multiple VFs are active, the isolation parameter is tightened to require host driver mediation. This parameter change allows the system to optimize performance when security risks are minimal while maintaining security when risks increase.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If the handshake protocol is required for state modifications, then security is improved, but productivity decreases due to additional communication steps

Engineering Contradiction:
Improvestate modification securityVSAvoidstate modification efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The handshake protocol requirement is made dynamic rather than static. In single-VF mode, the system transitions to a direct modification path that eliminates the handshake protocol, thereby improving productivity. In multi-VF mode, the handshake protocol is activated to ensure security. This dynamic behavior allows the system to achieve high productivity when security constraints are relaxed and maintains security when multiple VFs are present.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The handshake protocol is extracted as an optional component rather than a mandatory one. In single-VF mode, the handshake step is completely removed from the state modification path, allowing direct and efficient modifications. In multi-VF mode, the handshake protocol is re-introduced as a security gate. This extraction approach allows the system to eliminate unnecessary security overhead when it doesn't apply while maintaining it when needed.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If interrupts are disabled for VFs, then GPU state security is improved, but ease of operation worsens for performance analysis tools

Engineering Contradiction:
ImproveGPU state protectionVSAvoidperformance analysis capability
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The interrupt enablement status is made dynamic based on operational mode. In single-VF mode, interrupts from the VF to the system management unit are enabled, allowing performance analysis tools to efficiently modify GPU state and receive notifications. In multi-VF mode, interrupts are disabled to maintain security and prevent unauthorized state modifications. This dynamic control resolves the contradiction by enabling interrupts only when security risks are minimal.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12210891B2Modifying device status in single virtual function mode
Publication Date: 2025.01.28 ADVANCED MICRO DEVICES (SHANGHAI) CO LTD
  • US12210891B2 patent drawing
  • US12210891B2 patent drawing
  • US12210891B2 patent drawing

AI summary

A processing system includes physical function circuitry to execute virtual functions and a processing unit configured to operate in a first mode that allows more than one virtual function to execute on the physical function circuitry and a second mode that constrains the physical function circuitry to executing a single virtual function. A first virtual function modifies a state of the processing unit in response to the processing unit being in the second mode. A host driver executing on the processing unit modifies an operating mode indicator to indicate that the processing unit is operating in the first mode or to indicate that the processing unit is operating in the second mode. Microcode executing on the processing unit accesses the operating mode indicator to determine whether the processing unit is operating in the first mode or the second mode.