IP Library Granted Patent US 11,487,571
Granted Patent B2
US 11,487,571 · App. 16/914,571 · Granted Nov 1, 2022

Method and system for efficient utilization of resources in containers

Inventors: Shashidhar Soppin (Bangalore, IN); Chandrashekar Bangalore Nagaraj (Bangalore, IN); Manjunath Ramachandra Iyer (Bangalore, IN)
Assignee: Wipro Limited
G06F9/45558G06F9/4881G06F9/5005G06F2009/45583G06F2009/45595
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 11,487,571
App. No.
16/914,571
Granted
Nov 1, 2022
Kind
B2
Abstract

A method and system for allocating resources to containers includes receiving a plurality of resource allocation requests from a plurality of containers, receiving a preference of a container from each of the plurality of containers, determining a priority-sequence for the plurality of containers, allocating a first associated resource for an associated first time-period to each container of the plurality of containers, determining a current consumption of the first associated resource by each container of the plurality of containers during the associated first time-period, and allocating a second associated resource to each container of the plurality of containers based on the current consumption of the first associated resource by each container of the plurality of containers.

Claims (47)

1. A method of allocating resources to containers, the method comprising:

receiving, by a resource allocation device, a plurality of resource allocation requests from a plurality of containers;

upon receiving the plurality of resource allocation requests, receiving, by the resource allocation device, a preference of a container from each of the plurality of containers for allocating a resource, wherein the preference from each of the plurality of containers is received via a polling session, and wherein the preference is based on a criticality of requirement associated with each container of the plurality of containers;

determining, by the resource allocation device, a priority-sequence for the plurality of containers for allocating resources, based on the preference from each of the plurality of containers;

allocating, by the resource allocation device, a first associated resource for an associated first time-period to each container of the plurality of containers, based on the priority-sequence;

determining, by the resource allocation device, a current consumption of the first associated resource by each container of the plurality of containers during the associated first time-period; and

allocating, by the resource allocation device, a second associated resource to each container of the plurality of containers, based on one of the current consumption of the first associated resource by each container of the plurality of containers, and the current consumption of the first associated resource and a historical consumption of resources by each container of the plurality of containers, wherein the historical consumption of resources is received by each container of the plurality of containers,

wherein determining the priority-sequence further comprises:

receiving a level of resource requirement associated with each container of the plurality of containers;

calculating a collated resource allocation request by collating the plurality of resource allocation requests from the plurality of containers;

determining a threshold resource requirement associated with each container of the plurality of containers based on the level of resource requirement associated with each container of the plurality of containers and collated resource allocation request; and

determining the priority-sequence based on the threshold resource requirement associated with each container of the plurality of containers.

2. The method of claim 1 , wherein the preference is further based on one or more parameters comprising a size of memory, a duration of availability of the memory, a processing capability, and a power requirement.

3. The method of claim 1 , wherein the first time-period associated with each container of the plurality of containers is based on the time taken for allocating the second associated resource to each container of the plurality of containers.

4. The method of claim 1 , wherein allocating the second associated resource to each container of the plurality of containers is further based on a reinforcement learning model.

5. The method of claim 1 , further comprising comparing the first associated resource and the second associated resource allocated to each container of the plurality of containers, wherein the resource allocation device is trained based on the comparison.

6. A system for allocating resources to containers, the system comprising:

a processor; and

a memory communicatively coupled to the processor, wherein the memory stores processor-executable instructions, which, on execution, causes the processor to:

receive a plurality of resource allocation requests from a plurality of containers;

receive a preference of a container from each of the plurality of containers for allocating a resource upon receiving the plurality of resource allocation requests, wherein the preference from each of the plurality of containers is received via a polling session, and wherein the preference is based on a criticality of requirement associated with each container of the plurality of containers;

determine a priority-sequence for the plurality of containers for allocating resources, based on the preference from each of the plurality of containers;

allocate a first associated resource for an associated first time-period to each container of the plurality of containers, based on the priority-sequence;

determine a current consumption of the first associated resource by each container of the plurality of containers during the associated first time-period; and

allocate a second associated resource to each container of the plurality of containers, based on one of the current consumption of the first associated resource by each container of the plurality of containers, and the current consumption of the first associated resource and a historical consumption of resources by each container of the plurality of containers, wherein the historical consumption of resources is received by each container of the plurality of containers,

wherein the processor-executable instructions further cause the processor to determine the priority-sequence by:

receiving a level of resource requirement associated with each container of the plurality of containers;

calculating a collated resource allocation request by collating the plurality of resource allocation requests from the plurality of containers;

determining a threshold resource requirement associated with each container of the plurality of containers based on the level of resource requirement associated with each container of the plurality of containers and collated resource allocation request; and

determining the priority-sequence based on the threshold resource requirement associated with each container of the plurality of containers.

7. The system of claim 6 , wherein the preference is further based on one or more parameters comprising a size of memory, a duration of availability of the memory, a processing capability, and a power requirement.

8. The system of claim 6 , wherein the first time-period associated with each container of the plurality of containers is based on the time taken for allocating the second associated resource to each container of the plurality of containers.

9. The system of claim 6 , wherein allocating the second associated resource to each container of the plurality of containers is further based on a reinforcement learning model.

10. The system of claim 6 , wherein the processor compares the first associated resource and the second associated resource allocated to each container of the plurality of containers, and the resource allocation device is trained based on the comparison.

11. A non-transitory computer-readable medium, for allocating resources to containers, having stored thereon, a set of computer-executable instructions causing a computer comprising one or more processors to perform steps comprising:

receiving a plurality of resource allocation requests from a plurality of containers;

upon receiving the plurality of resource allocation requests, receiving, a preference of a container from each of the plurality of containers for allocating a resource, wherein the preference from each of the plurality of containers is received via a polling session, and wherein the preference is based on a criticality of requirement associated with each container of the plurality of containers;

determining a priority-sequence for the plurality of containers for allocating resources, based on the preference from each of the plurality of containers;

allocating a first associated resource for an associated first time-period to each container of the plurality of containers, based on the priority-sequence;

determining a current consumption of the first associated resource by each container of the plurality of containers during the associated first time-period; and

allocating a second associated resource to each container of the plurality of containers, based on one of the current consumption of the first associated resource by each container of the plurality of containers, and the current consumption of the first associated resource and a historical consumption of resources by each container of the plurality of containers, wherein the historical consumption of resources is received by each container of the plurality of containers,

wherein determining the priority-sequence further comprises:

receiving a level of resource requirement associated with each container of the plurality of containers;

calculating a collated resource allocation request by collating the plurality of resource allocation requests from the plurality of containers;

determining a threshold resource requirement associated with each container of the plurality of containers based on the level of resource requirement associated with each container of the plurality of containers and collated resource allocation request; and

determining the priority-sequence based on the threshold resource requirement associated with each container of the plurality of containers.

12. The non-transitory computer-readable medium of claim 11 further comprising comparing the first associated resource and the second associated resource allocated to each container of the plurality of containers, wherein the resource allocation device is trained based on the comparison.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 29, 2020
From: SOPPIN, SHASHIDHAR; NAGARAJ, CHANDRASHEKAR BANGALORE; IYER, MANJUNATH RAMACHANDRA
To: WIPRO LIMITED
Reel/Frame 053068/0542 →
Priority Claims (1)
IN 202041013880 · Mar 30, 2020 · national
Continuity (1)
Related Publication 20210303328A1 · Sep 30, 2021