User Mode Graphics Driver for Cloud Mobile Phone Rendering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional cloud-based mobile phone simulation systems experience high CPU overheads due to the need for instruction translation and interception in image rendering, composition, and display processes, which hampers efficiency and scalability.

Innovation Solution

Deploying a user mode graphics driver in the guest operating system and a kernel mode graphics driver in the host operating system, eliminating the need for an instruction translation layer, allowing direct command submission to the GPU and optimizing image processing by skipping unnecessary translation and composition operations based on the image capture program's state.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If an instruction translation layer is deployed to enable GPU command execution in virtualized environments, then multiple guest operating systems can be supported, but CPU overhead increases significantly due to instruction interception and translation

Engineering Contradiction:
Improvesupport for multiple guest operating systemsVSAvoidCPU overhead
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent extracts the graphics driver functionality from the guest operating system and places it in the host operating system. Specifically, the graphics driver runs in userspace on the host, allowing GPU command generation to be decoupled from the instruction translation layer. This eliminates the need for CPU-based instruction interception and translation, as the host's graphics driver可以直接 generate GPU-executable commands without involving the guest OS's graphics instruction layer

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a userspace graphics driver on the host as an intermediary between the guest operating systems and the GPU. This intermediary component generates GPU commands directly in the host's userspace, acting as a mediator that bypasses the traditional virtio-gpu instruction translation path. The userspace driver receives display composition information from the guest and directly formulates GPU commands, eliminating the need for instruction interception and translation layers

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If complete image processing workflow including composition and capture is executed, then image rendering quality is maintained, but processing time and system overhead increase

Engineering Contradiction:
Improveimage rendering qualityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements conditional execution of the image capture program based on whether the displayed content actually changes. The system checks if the current display composition differs from the previous state, and only executes the capture program when changes are detected. This partial execution approach maintains rendering quality when needed while avoiding unnecessary processing time and overhead when content remains unchanged

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11908040B2Image processing method and computer system
Publication Date: 2024.02.20 HUAWEI TECH CO LTD
  • US11908040B2 patent drawing
  • US11908040B2 patent drawing
  • US11908040B2 patent drawing

AI summary

An image processing method and a computer system. The method may be applied to a cloud-side server in a cloud mobile phone. The server may be a virtualization server, a host operating system and a guest operating system are deployed on the server, a user mode graphics driver is deployed in the guest operating system, and a kernel mode graphics driver is deployed in the host operating system. The user mode graphics driver and the kernel mode graphics driver collaborate with each other to implement image rendering of the server. Then, the server may send a rendered image to the cloud mobile phone. Accordingly, an instruction translation process is reduced, to reduce overheads of a processor and improve image processing efficiency.