Aligning Guest Job Submission with World Switch Timing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtualization environments using SR-IOV, the timing of job submissions from virtual functions to parallel processors can lead to visual stuttering and lag due to decoupling from graphics rendering timing, causing frame rate delays and inconsistencies.
Innovation Solution
A method is introduced where the host PF driver adjusts the world switch timing and job submission delay based on historical job preparation durations and variations, ensuring that job submissions align with the next available time slice of the parallel processor, using a calculated offset and bias to account for preparation latency and variability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If job submissions are decoupled from graphics rendering timing in virtualization environments, then multiple virtual machines can share GPU resources through time-sliced allocation, but visual stuttering and lag occur due to frame rate delays and inconsistencies
Solution Approach 1:
The host PF driver calculates and applies an offset based on historical job preparation durations before submitting jobs to the parallel processor. This preliminary timing adjustment ensures that job submissions are synchronized with the virtual function's time slice allocation, preventing visual stuttering and maintaining consistent frame rates while preserving GPU resource sharing capabilities across multiple virtual machines
2Reliability
If world switch timing is adjusted based on historical job preparation durations, then job submissions align with available time slices reducing visual stuttering, but system complexity increases due to offset and bias calculations
Solution Approach 1:
The system implements feedback by continuously monitoring job preparation durations and using this historical data to dynamically adjust the offset applied to world switch timing. This feedback mechanism enables automatic synchronization between job submissions and time slice allocations, improving visual smoothness while keeping the complexity management straightforward through data-driven timing adjustments
Data Source
AI summary
A processing system aligns rendering timing of an application executing at a guest virtual function to world switch timing of a host virtual machine. The host virtual machine sets a world switch interval based on a number of virtual functions (VFs) that share the parallel processor and a target maximum frame rate. The processing system delays submission of jobs for a VF to the parallel processor by an offset with respect to the world switch timing to ensure that the application starts generating a job for the parallel processor before the VF gains a time slice so the job will be ready for the parallel processor when the VF gains the time slice.


