IP Library Granted Patent US 12,578,999
Granted Patent B2
US 12,578,999 · App. 19/029,511 · Granted Mar 17, 2026

Automated rightsizing of containerized application with optimized horizontal scaling

Inventors: Bradley Joseph Beam (Olathe, KS); Jeremy Michael Gustie (Williston, VT); Christopher Marc Larson (McLean, VA); Thibaut Xavier Perol (Arlington, VA); John Daniel Platt (Washington, DC)
Assignee: CLOUDBOLT SOFTWARE, INC.
G06F9/5027
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,578,999
App. No.
19/029,511
Granted
Mar 17, 2026
Kind
B2
Abstract

A method for rightsizing an application, including analyzing, via processing circuitry, metrics from containers; determining, via the processing circuitry, a resource allocation and a target resource utilization for an application workload based on the metrics; and configuring, via the processing circuitry, the application workload based on the resource allocation, the target resource utilization, and the metrics.

Claims (32)

1 . A method for rightsizing an application, comprising:

acquiring, via processing circuitry, one or more metrics from containers in the application;

determining both a resource allocation and a target resource utilization corresponding to an application workload of the application by inputting the acquired one or more metrics to a machine-learning model, the machine-learning model being configured to simultaneously output both (1) a recommended resource allocation indicating a number of allocated resources, and (2) a recommended target resource utilization indicating a target percentage usage of each allocated resource, the recommended resource allocation and the recommended target resource utilization being determined in tandem by the machine-learning model; and

automatically configuring, via the processing circuitry, the application workload based on the determined resource allocation, the determined target resource utilization, and the acquired one or more metrics.

2 . The method of claim 1 , wherein the acquired one or more metrics are collected from deployed containers and analyzed by the machine-learning model simultaneously to determine both the resource allocation and the target resource utilization for the application workload.

3 . The method of claim 2 , further comprising receiving a configuration input from a user, wherein the machine-learning model is configured based on the configuration input.

4 . The method of claim 1 ,

wherein the determination of the target resource utilization is used for simultaneous horizontal scaling of the application workload.

5 . The method of claim 1 , further comprising generating, using machine learning, a prediction of resource usage metrics and operating costs based on the determined resource allocation and the determined target resource utilization before configuring the application workload.

6 . The method of claim 1 , further comprising continuously and automatically configuring the application workload with the determined resource allocation and the determined target resource utilization.

7 . The method of claim 1 , wherein the acquired one or more metrics input to the machine-learning model include a number of replicas, a maximum number and a minimum number of allowable replicas, and a number and a type of metrics used by a horizontal autoscaler.

8 . A device, comprising:

processing circuitry configured to:

acquire one or more metrics from containers in an application,

determine both a resource allocation and a target resource utilization corresponding to an application workload of the application by inputting the acquired one or more metrics to a machine-learning model, the machine-learning model being configured to simultaneously output both (1) a recommended resource allocation indicating a number of allocated resources, and (2) a recommended target resource utilization indicating a target percentage usage of each allocated resource, the recommended resource allocation and the recommended target resource utilization being determined in tandem by the machine-learning model, and

automatically configure the application workload based on the determined resource allocation, the determined target resource utilization, and the acquired one or more metrics.

9 . The device of claim 8 , wherein the acquired one or more metrics are collected from deployed containers and analyzed by the machine learning model simultaneously to determine both the resource allocation and the target resource utilization for the application workload.

10 . The device of claim 9 , wherein the processing circuitry is further configured to receive a configuration input from a user, wherein the machine-learning model is configured based on the configuration input.

11 . The device of claim 8 ,

wherein the determination of the target resource utilization is used for simultaneous horizontal scaling of the application workload.

12 . The device of claim 8 , wherein the processing circuitry is further configured to generate, using machine learning, a prediction of resource usage metrics and operating costs based on the determined resource allocation and the determined target resource utilization before configuring the application.

13 . The device of claim 8 , wherein the processing circuitry is further configured to continuously and automatically configure the application workload with the determined resource allocation and the determined target resource utilization.

14 . A non-transitory computer-readable storage medium for storing computer-readable instructions that, when executed by a computer, cause the computer to perform a method, the method comprising:

acquiring one or more metrics from containers in an application;

determining both a resource allocation and a target resource utilization corresponding to an application workload of the application by inputting the acquired one or more metrics to a machine-learning model, the machine-learning model being configured to simultaneously output both (1) a recommended resource allocation indicating a number of allocated resources, and (2) a recommended target resource utilization indicating a target percentage usage of each allocated resource, the recommended resource allocation and the recommended target resource utilization being determined in tandem by the machine-learning model; and

automatically configuring the application workload based on the determined resource allocation, the determined target resource utilization, and the acquired one or more metrics.

15 . The non-transitory computer-readable storage medium of claim 14 , wherein the acquired one or more metrics are collected from deployed containers and analyzed simultaneously by the machine-learning model to determine the resource allocation and the target resource utilization for the application workload.

16 . The non-transitory computer-readable storage medium of claim 15 , further comprising receiving a configuration input from a user, wherein the machine-learning model is configured based on the configuration input.

17 . The non-transitory computer-readable storage medium of claim 14 ,

wherein the determination of the target resource utilization is used for simultaneous horizontal scaling of the application workload.

18 . The non-transitory computer-readable storage medium of claim 14 , further comprising generating, using machine learning, a prediction of resource usage metrics and operating costs based on the determined resource allocation and the determined target resource utilization before configuring the application workload.

19 . The non-transitory computer-readable storage medium of claim 14 , further comprising continuously and automatically configuring the application workload with the determined resource allocation and the determined target resource utilization.

Assignments (2)
SECURITY INTEREST Recorded Jul 29, 2026
From: CLOUDBOLT SOFTWARE, INC.
To: STIFEL BANK
Reel/Frame 075435/0953 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2025
From: GRAM LABS, INC.
To: CLOUDBOLT SOFTWARE, INC.
Reel/Frame 072081/0956 →
Continuity (3)
Continuation 18736094 · Jun 6, 2024
Provisional Application 63507077 · Jun 8, 2023
Related Publication 20250165298A1 · May 22, 2025
References Cited (35)
US 9043798B2 · Calcaterra · 2015 [cited by examiner]
US 10776172B1 · Rachamadugu · 2020 [cited by examiner]
US 10901788B2 · Venkadasamy · 2021 [cited by examiner]
US 10963311B2 · Walsh · 2021 [cited by examiner]
US 12112287B1 · Kwan · 2024 [cited by examiner]
US 12147838B1 · Wellum · 2024 [cited by examiner]
US 20130346969A1 · Shanmuganathan · 2013 [cited by examiner]
US 20190286486A1 · Ma · 2019 [cited by examiner]
US 20200082316A1 · Megahed · 2020 [cited by examiner]
US 20200174839A1 · Venkadasamy · 2020 [cited by examiner]
US 20200322226A1 · Mishra · 2020 [cited by examiner]
US 20200401456A1 · Sivak · 2020 [cited by examiner]
US 20210357255A1 · Mahadik · 2021 [cited by examiner]
US 20220114020A1 · Akkapeddi · 2022 [cited by examiner]
US 20220383324A1 · Sheshadri · 2022 [cited by examiner]
US 20220413935A1 · Kantamneni · 2022 [cited by examiner]
US 20220417173A1 · Jijumon · 2022 [cited by examiner]
US 20230050796A1 · Ghergu · 2023 [cited by examiner]
US 20230153170A1 · An · 2023 [cited by examiner]
US 20230315537A1 · Samareh Abolhasani · 2023 [cited by examiner]
US 20230401541A1 · Housseini · 2023 [cited by examiner]
US 20240004711A1 · Young, Jr. · 2024 [cited by examiner]
US 20240320057A1 · Dunne · 2024 [cited by examiner]
US 20240356862A1 · Sandgren · 2024 [cited by examiner]
US 20240370307A1 · You · 2024 [cited by examiner]
US 20240394110A1 · Coviello · 2024 [cited by examiner]
US 20240419470A1 · Beveridge · 2024 [cited by examiner]
US 20250181412A1 · Wu · 2025 [cited by examiner]
US 20250310202A1 · Atur · 2025 [cited by examiner]
Imdoukh et al.; “Machine learning-based auto-scaling for containerized applications”; Neural Computing and Applications (2020) 32: 9745-9760; https://doi.org/10.1007/s00521-019-04507-z; Springer-Verlag London Ltd., part… [cited by examiner]
Ivanovic et al.; “Efficient evolutionary optimization using predictive auto-scaling in containerized environment”; Applied Soft Computing 129 (2022) 109610; https://doi.org/10.1016/j.asoc.2022.109610; 2022 Elsevier B.V.… [cited by examiner]
Abdullah et al.; “Burst-Aware Predictive Autoscaling for Containerized Microservices”; IEEE Transactions on Services Computing, vol. 15, No. 3, May/Jun. 2022; Digital Object Identifier No. 10.1109/TSC.2020.2995937; (Abd… [cited by examiner]
Ye et al.; “An Auto-scaling Framework for Containerized Elastic Applications”; 2017 3rd International Conference on Big Data Computing and Communications; 2017 IEEE; DOI 10.1109/BIGCOM.2017.40 (Ye_2017.pdf; pp. 422-430)… [cited by examiner]
Imdoukh et al.; “Machine learning-based auto-scaling for containerized applications”; Neural Computing and Applications (2020) 32: 9745-9760; https://doi.org/10.1007/s00521-019-04507-z; (Imdoukh_2020.pdf) (Year: 2020). [cited by examiner]
Rossi et al.; “Horizontal and Vertical Scaling of Container-based Applications using Reinforcement Learning”; 2019 IEEE 12th International Conference on Cloud Computing (CLOUD); DOI 10.1109/CLOUD.2019.00061; (Rossi_2019… [cited by examiner]