Virtual Device Failure Recovery for 3D Graphics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Streaming 3D graphics in virtual desktop sessions is challenging due to bandwidth and compression requirements, and 3D graphics processing units (GPUs) can become overloaded, leading to timeouts and resets, which disrupt the rendering process.

Innovation Solution

A system that establishes a communication channel between the virtualization platform and the virtual machine, detects GPU rendering process terminations, restarts the rendering process, and sends signals to the virtual device driver to re-establish a graphics buffer and resume 3D graphics data transmission.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If GPUs are used to render multiple 3D graphical user interfaces simultaneously in virtual desktop sessions, then the system can support more users and virtual machines, but the GPUs become overloaded causing timeouts and resets that disrupt rendering

Engineering Contradiction:
Improvenumber of virtual desktop sessions supportedVSAvoidrendering process stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary actions by detecting rendering process terminations and restarting them before complete system failure occurs. The virtualization platform monitors rendering processes and automatically restarts them when they terminate due to GPU resets, preventing complete service disruption and maintaining continuous operation despite GPU overloads

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by monitoring the state of rendering processes and GPU health. When a rendering process terminates or a GPU reset is detected, the system receives feedback about the failure condition and responds by restarting the rendering process and re-establishing graphics buffers, creating a closed-loop control system that maintains stability under load

Inventive Principle:
Principle #23Feedback

2Ease of operation

If 3D graphics processing is enabled in virtual desktop sessions, then user experience is improved with 3D rendering capability, but bandwidth and compression requirements increase system complexity

Engineering Contradiction:
Improveuser experience qualityVSAvoidsystem complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent introduces intermediary components including a virtual device driver and graphics buffer that mediate between the virtual machine and the physical GPU. These intermediaries manage the complexity of 3D graphics processing by providing abstraction layers that handle rendering process management, buffer establishment, and communication channel coordination, thereby enabling 3D capabilities while managing system complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

3Duration of action of stationary object

If rendering processes are restarted after GPU resets, then service continuity is maintained, but additional recovery operations increase processing time

Engineering Contradiction:
Improveservice continuityVSAvoidrecovery time
Core Design Contradiction:
Duration of action of stationary objectVSLoss of time

Solution Approach 1:

The system performs preliminary detection and restart operations immediately when a rendering process termination is detected, rather than waiting for complete system failure. By proactively restarting rendering processes and re-establishing graphics buffers at the earliest opportunity, the system minimizes service interruption time while maintaining continuity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system rushes through the recovery process by immediately restarting rendering processes and re-establishing graphics buffers without extensive error checking or user intervention. The automated recovery mechanism quickly restores service by skipping non-critical validation steps and focusing on rapid re-establishment of rendering functionality

Inventive Principle:
Principle #21Skipping (Rushing through)

Data Source

PatentUS8970603B2Dynamic virtual device failure recovery
Publication Date: 2015.03.03 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8970603B2 patent drawing
  • US8970603B2 patent drawing
  • US8970603B2 patent drawing

AI summary

Exemplary techniques for recovering from a graphics processor reset are herein disclosed. In an exemplary embodiment, a 3D graphics service manager 404 can detect that a graphics processing unit reset and can restart a rendering process configured to render 3D graphics for a virtual machine and cause a graphics buffer to be established between the rendering process and the virtual machine. In addition to the foregoing, other aspects are described in the detailed description, claims, and figures.