Accelerator Scheduling Statistics Handling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtualized data processing systems, there is a latency issue in obtaining scheduling statistics from accelerators, which hinders efficient resource allocation and management, particularly when multiple virtual machines compete for shared accelerator resources.
Innovation Solution
The accelerator periodically writes scheduling statistics to a shared storage area without a request from the hypervisor, allowing the hypervisor to access this information quickly and efficiently, reducing latency and improving resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If the hypervisor requests scheduling statistics from the accelerator when needed, then the hypervisor can obtain the required information, but the process introduces significant latency (approximately 100 μs) that hinders efficient resource allocation
Solution Approach 1:
The accelerator proactively writes scheduling statistics to shared memory in advance, before the hypervisor needs to request them. This preliminary action eliminates the latency associated with on-demand requests, as the statistics are already available when the hypervisor needs to make scheduling decisions.
Solution Approach 2:
Shared memory serves as an intermediary between the accelerator and the hypervisor. Instead of direct communication requiring request-response cycles, the accelerator writes to shared memory and the hypervisor reads from it, enabling asynchronous data exchange and eliminating request latency.
2Loss of time
If the accelerator periodically writes scheduling statistics to shared memory without requests, then the hypervisor can access information quickly (reducing latency to approximately 100 ns), but the accelerator performs unnecessary writing operations
Solution Approach 1:
The accelerator writes scheduling statistics to shared memory at periodic intervals rather than continuously or on every event. This periodic action balances the need for fresh data with the cost of writing operations, ensuring statistics are updated frequently enough to be useful while avoiding excessive energy consumption from continuous writing.
Data Source
AI summary
A data processing system comprises one or more processors that each execute one or more operating systems. Each operating system includes one or more applications. The system also comprises an accelerator that provides a shared resource for a plurality of the applications, an input/output module comprising one or more input/output interfaces for the submission of tasks to the accelerator, a hypervisor that manages the allocation of the input/output interfaces to the one or more operating systems and a storage area accessible by the hypervisor and the accelerator. The accelerator is capable of writing one or more selected pieces of information representative of one or more scheduling statistics of the accelerator periodically to the storage area without having received a request for the one or more selected pieces of information from the hypervisor.


