US 12,333,348 B2
Allocating computing resources for deferrable virtual machines
Yuwen Yang, Bellevue, WA (US); Gurpreet Virdi, Redmond, WA (US); Bo Qiao, Beijing (CN); Hang Dong, Beijing (CN); Karthikeyan Subramanian, Redmond, WA (US); Marko Lalic, Seattle, WA (US); Shandan Zhou, Kenmore, WA (US); Si Qin, Beijing (CN); Thomas Moscibroda, Bellevue, WA (US); and Yunus Mohammed, Redmond, WA (US)
Assigned to Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed by Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed on Apr. 10, 2024, as Appl. No. 18/631,903.
Application 18/631,903 is a continuation of application No. 17/229,551, filed on Apr. 13, 2021, granted, now 11,972,301.
Prior Publication US 2024/0256362 A1, Aug. 1, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 9/50 (2006.01); G06F 9/455 (2018.01)
CPC G06F 9/5077 (2013.01) [G06F 9/45558 (2013.01); G06F 9/50 (2013.01); G06F 9/5038 (2013.01); G06F 9/505 (2013.01); G06F 2009/4557 (2013.01); G06F 2009/45583 (2013.01); G06F 2009/45595 (2013.01); G06F 9/5022 (2013.01); G06F 2209/5019 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method, comprising:
receiving predicted capacity information for a plurality of server nodes, the predicted capacity information including an indication of a surplus capacity for an identified period of time on the plurality of server nodes;
receiving deployment requests for a plurality of deferrable virtual machines (VMs), the deployment requests including, for each deferrable VM, an associated duration of time for the deferrable VM to run uninterrupted on a computing resource;
determining a quantity of deferrable VMs from the plurality of deferrable VMs to be eligible for deployment on the plurality of server nodes over the identified period of time based on the indication of the surplus capacity for the identified period of time; and
generating allocation instructions to provide to an allocation engine configured to allocate computing resources on the plurality of server nodes, the allocation instructions including instructions associated with deploying deferrable VMs over the identified period of time.