DYNAMIC TECHNIQUES FOR OPTIMIZING SOFT REAL-TIME TASK PERFORMANCE IN VIRTUAL MACHINE
First Claim
1. A method comprising:
- receiving by a hypervisor in a data-processing system a first metric that is associated with a first domain, wherein;
(i) the data-processing system comprises a first processor and a second processor,(ii) the first domain comprises a first plurality of tasks that were executed on the data-processing system, and(iii) the first metric is based on the amount of time, during an earlier time interval, that was spent executing tasks of the first domain that had an over priority;
when the value of the first metric is above a first threshold, increasing an amount of time to be spent in a later time interval to execute tasks of the first domain that have an over priority; and
executing by the data-processing system in the later time interval the tasks of the first domain, based on the increased amount of time.
17 Assignments
0 Petitions
Accused Products
Abstract
Methods to dynamically improve soft real-time task performance in virtualized computing environments under the management of an enhanced hypervisor comprising a credit scheduler. The enhanced hypervisor analyzes the on-going performance of the domains of interest and of the virtualized data-processing system. Based on the performance metrics disclosed herein, some of the governing parameters of the credit scheduler are adjusted. Adjustments are typically performed cyclically, wherein the performance metrics of an execution cycle are analyzed and adjustments may be applied in a later execution cycle. In alternative embodiments, some of the analysis and tuning functions are in a separate application that resides outside the hypervisor. The performance metrics disclosed herein include: a “total-time” metric; a “timeslice” metric; a number of “latency” metrics; and a “count” metric. In contrast to prior art, the present invention enables on-going monitoring of a virtualized data-processing system accompanied by dynamic adjustments based on objective metrics.
17 Citations
24 Claims
-
1. A method comprising:
-
receiving by a hypervisor in a data-processing system a first metric that is associated with a first domain, wherein; (i) the data-processing system comprises a first processor and a second processor, (ii) the first domain comprises a first plurality of tasks that were executed on the data-processing system, and (iii) the first metric is based on the amount of time, during an earlier time interval, that was spent executing tasks of the first domain that had an over priority; when the value of the first metric is above a first threshold, increasing an amount of time to be spent in a later time interval to execute tasks of the first domain that have an over priority; and executing by the data-processing system in the later time interval the tasks of the first domain, based on the increased amount of time. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method comprising:
-
receiving, by a hypervisor in a data-processing system, a first metric that is associated with a first domain, wherein; (i) the data-processing system comprises a first processor and a second processor, (ii) the first domain comprises a first plurality of tasks that were executed on the data-processing system, and (iii) the first metric is based on the amount of time, during an earlier time interval, that was spent executing tasks of the first domain that had an under priority; and when the value of the first metric is below a first threshold, scheduling the tasks of the first domain exclusively to the first processor, to be executed in a later time interval; and executing, in the later time interval, exclusively by the first processor, the tasks of the first domain. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A method comprising:
-
receiving by a hypervisor in a data-processing system a first metric that is associated with a first domain, wherein; (i) the data-processing system comprises a first processor and a second processor, (ii) the first domain comprises a first plurality of tasks that were executed on the data-processing system, and (iii) the first metric is based on a measurement of total latency, during an earlier time interval, of tasks of the first domain that had an over priority; and when the value of the first metric is above a first threshold, increasing the amount of time to be spent in a later time interval to execute tasks of the first domain that have an over priority. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification