CPC G06F 11/3616 (2013.01) [G06F 8/60 (2013.01); G06F 8/77 (2013.01); G06F 9/4881 (2013.01)] | 14 Claims |
1. A computer-implemented method, the method comprising:
receiving, at a controller in a feedback loop, a target number of idle agents, wherein an idle agent is a computing resource in a cluster of cloud-based computing resources;
receiving, at the controller, a current number of idle agents in the cluster of cloud-based computing resources;
computing a control variable for the cluster of cloud-based computing resources based on the target number of idle agents and the current number of idle agents; and
submitting the control variable to a scheduler for managing the cluster of cloud-based computing resources, wherein the number of idle agents in the cluster of cloud-based computing resources scales based on the control variable,
wherein the controller is a proportional-integral-derivative controller, and the control variable is a sum of:
a proportional term that is proportional to an error, wherein the error is a difference between the target number of idle agents and the current number of idle agents;
an integral term proportional to a sum of past values of the error; and
a derivative term proportional to a change in the error.
|