Graphics Function Virtualization Using Host GPU Redirection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Virtualizing graphics processing units (GPUs) in complex embedded systems, such as avionics devices and healthcare systems, is impractical due to scarce documentation, proprietary technology, and computational inefficiencies, leading to reduced fidelity and performance in simulation.

Innovation Solution

A host computer virtualizes and emulates certain hardware of the target system, intercepts graphics function calls at run-time, and redirects them to the host GPU without modifying the target code, using a virtual machine (VM) to maintain high-fidelity simulation and graphics output.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the target GPU is virtualized through a VM, then simulation fidelity is improved, but computing performance deteriorates due to the computational overhead of emulating complex graphics functions

Engineering Contradiction:
Improvesimulation fidelityVSAvoidcomputing performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent extracts the graphics function execution from the VM environment and redirects it to the host GPU. The VM no longer needs to emulate graphics functions, instead it intercepts function calls and redirects them to the host system's native GPU capabilities, eliminating the computational overhead of graphics emulation while maintaining simulation fidelity for other system components.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an intermediary mechanism (the VM with intercept functionality) between the target code and the host GPU. This intermediary captures graphics function calls and redirects them appropriately, allowing the VM to maintain high-fidelity simulation of the target system while leveraging the host GPU's native capabilities for graphics rendering.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If detailed knowledge of target hardware is acquired to build a VM that imitates the target system, then simulation fidelity is improved, but device complexity increases

Engineering Contradiction:
Improvesimulation fidelityVSAvoidVM configuration complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent makes the VM universal by enabling it to run target code for different embedded systems without requiring specific GPU emulation for each target. The VM maintains fidelity by accurately emulating the target system's CPU, memory, and peripheral devices, while graphics rendering is handled by the host GPU through function call interception, eliminating the need for detailed target GPU knowledge.

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

3Ease of operation

If re-targeting of software is performed to compile on native hardware, then ease of operation is improved, but manufacturing precision deteriorates due to labor-intensive modification and reduced simulation fidelity

Engineering Contradiction:
Improvesoftware compatibilityVSAvoidsimulation fidelity
Core Design Contradiction:
Ease of operationVSManufacturing precision

Solution Approach 1:

The patent creates a virtual copy of the target system's hardware environment (CPU, memory, peripherals) within the VM, allowing the target code to execute as if on the original embedded system. This virtual hardware copying maintains simulation fidelity without requiring software re-targeting, as the code runs natively on the emulated hardware while graphics functions are redirected to the host GPU.

Inventive Principle:
Principle #26Copying

Data Source

PatentEP3968154B1Virtual machine for virtualizing graphics functions
Publication Date: 2026.02.11 THE BOEING CO
  • EP3968154B1 patent drawingFigure 1
  • EP3968154B1 patent drawingFigure 2
  • EP3968154B1 patent drawingFigure 3

AI summary

A host computer for emulating a target system includes a host memory, a CPU, and a host GPU. The host memory is configured to store a library of graphics functions and a VM. The VM includes a section of emulated memory storing target code configured to execute on the target system. The CPU is configured to execute the VM to emulate the target system. The VM is configured to execute the target code and intercept a graphics function call in the target code. The VM is further configured to redirect the graphics function call to a corresponding graphics function in the library of graphics functions stored in the host memory. The host GPU is configured to execute the corresponding graphics function to determine at least one feature configured to be rendered on a display coupled to the host GPU.