Driver Parameter Updates via Telemetry for Input Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Interactive systems face delays between user input devices and program responses due to various causes, making it difficult to implement a single optimization technique effective across different programs, leading to inconsistent latency reduction experiences for users.

Innovation Solution

A computing system that collects run-time telemetry data from user computing devices, processes it to determine performance metrics, and updates driver parameters to optimize communication between user input devices and computing devices, applying these updates for subsequent program executions to reduce input latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a single optimization technique is implemented across all programs, then device complexity is reduced, but input latency cannot be consistently reduced across different programs

Engineering Contradiction:
Improveprogram-specific optimizationVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the optimization approach by creating program-specific driver parameter configurations. Instead of a single universal optimization technique, the system divides optimization into discrete program-specific instances, where each program can have its own tailored driver parameters based on its unique communication characteristics and performance requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically adapts driver parameters based on the specific program being executed. The driver parameter database allows the system to switch between different optimized configurations depending on the active program, enabling dynamic optimization that adapts to changing program requirements rather than using a static single-configuration approach.

Inventive Principle:
Principle #15Dynamics

2Loss of time

If driver parameters are customized for each program, then input latency is consistently reduced, but device complexity increases

Engineering Contradiction:
Improveinput latencyVSAvoiddriver parameter management
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-calculating and storing optimized driver parameters in a database before program execution. The system performs the complex optimization work in advance, analyzing program characteristics and determining optimal driver parameters beforehand, so that during actual program execution, the system can simply retrieve and apply pre-determined parameters without real-time computation overhead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary component - the driver parameter database - that mediates between the complex optimization process and program execution. This intermediary stores pre-computed optimized parameters and provides them to programs as needed, separating the complexity of parameter optimization from program execution and simplifying the overall system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If telemetry data is collected and processed for each program, then performance metrics are accurately determined, but data processing time increases

Engineering Contradiction:
Improveperformance metric accuracyVSAvoiddata processing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary data collection during program execution, gathering telemetry data that is then processed offline to determine optimized driver parameters. By separating data collection during execution from data processing after execution, the system maintains high measurement precision while avoiding real-time processing delays that would impact program performance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11590426B2Updated driver parameters determined by telemetry data
Publication Date: 2023.02.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11590426B2 patent drawing
  • US11590426B2 patent drawing
  • US11590426B2 patent drawing

AI summary

A computing system is provided. The computing system includes a server having one or more processors configured to receive from a user computing device run-time telemetry data, the run-time telemetry data being recorded during execution of a target program of a plurality of programs by the user computing device and being indicative of communication between the user computing device and a user input device. The one or more processors are further configured to determine a performance metric based on the run-time telemetry data, determine an updated driver parameter for the target program based on the determined performance metric, send the updated driver parameter to the user computing device, and apply the updated driver parameter for use during a subsequent execution of the target program.