US 12,135,632 B2
Control loop for scaling agents in a cluster
Nicholas Stipanovich, Redmond, WA (US); and Stephen James Day, Kirkland, WA (US)
Assigned to GM Cruise Holdings LLC, San Francisco, CA (US)
Filed by GM Cruise Holdings LLC, San Francisco, CA (US)
Filed on Feb. 28, 2023, as Appl. No. 18/175,991.
Prior Publication US 2024/0289251 A1, Aug. 29, 2024
Int. Cl. G06F 11/36 (2006.01); G06F 8/60 (2018.01); G06F 8/77 (2018.01); G06F 9/48 (2006.01)
CPC G06F 11/3616 (2013.01) [G06F 8/60 (2013.01); G06F 8/77 (2013.01); G06F 9/4881 (2013.01)] 14 Claims
OG exemplary drawing
 
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.