IP Library Granted Patent US 7,634,590
Granted Patent B2
US 7,634,590 · App. 11/268,912 · Granted Dec 15, 2009

Resource pool monitor

Assignee: Computer Associates Think, Inc.
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 7,634,590
App. No.
11/268,912
Granted
Dec 15, 2009
Kind
B2
Abstract

Resource pool depletion information, including the estimated time until the resource pool is depleted, is derived from resource pool data. Data regarding the size of a resource pool is collected over a period of time. The data may include the resource pool size and other information. One or more functions are then generated to fit one or more sets of data within the collected resource pool data. The best fitting function is selected from the generated functions and used to determine the time at which the particular resource pool will become depleted. Values for the selected function can be generated at future points in time to determine the depletion point of the resource pool. The time information as well as depletion confidence values are provided to a user or otherwise processed.

Claims (71)

1. A machine-implemented method for monitoring a resource pool, comprising:

accessing resource pool data;

fitting a plurality of functions to the resource pool data, each of the functions is fit to data in the resource pool data that covers a different time interval, each of the different time intervals has at least one data point in common;

determining a measure for each of the functions that defines how well the function fits the resource pool data for the time interval to which the function has been fit;

selecting one of the plurality of functions as a best overall fit based on the measure for each of the functions; and

determining resource pool depletion data from the resource pool data and the selected one of the plurality of functions.

2. The machine-implemented method of claim 1 , wherein said step of accessing includes:

accessing the size of a resource pool.

3. The machine-implemented method of claim 1 , wherein said step of accessing includes:

tracking the size of a resource pool over a period of time.

4. The machine-implemented method of claim 1 , wherein said step of accessing includes:

accessing resource pool data using bytecode instrumentation.

5. The method of claim 1 , wherein said step of determining resource pool depletion data includes:

estimating the time at which the resource pool will be depleted.

6. The machine-implemented method of claim 1 , wherein said step of fitting a plurality of functions uses linear regression.

7. The machine-implemented method of claim 5 , wherein the estimating the time at which the resource pool will be depleted comprises:

determining the time at which the value of the selected function indicates that the resource pool is depleted.

8. The machine-implemented method of claim 1 , further comprising:

determining a probability that the resource pool is approaching depletion.

9. The machine-implemented method of claim 1 , further comprising:

providing the resource pool depletion data through a user interface.

10. A machine-implemented method of monitoring a resource pool, comprising:

tracking resource pool data over time for a resource pool;

fitting a plurality of functions to the resource pool data, each of the functions is fit to data in the resource pool data that covers a different time interval, each of the different time intervals have at least one data point in common;

determining a measure for each of the functions that defines how well the function fits the resource pool data for the time interval to which the function has been fit;

selecting one of the plurality of functions as a best overall fit based on the measure for each of the functions;

estimating a time at which the resource pool will be depleted based on the selected function; and

determining a probability that the resource pool will become depleted at the estimated time.

11. The machine-implemented method of claim 10 , wherein said step of tracking includes:

storing the size of the resource pool upon occurrence of an event.

12. The machine-implemented method of claim 11 , wherein the event is a memory flush.

13. The machine-implemented method of claim 11 , wherein the resource pool includes memory, the size of the resource pool includes an amount of available memory.

14. The machine-implemented method of claim 10 , wherein said step of tracking includes:

adding object code to an application; and

retrieving resource pool data by the object code.

15. The machine-implemented method of claim 10 , wherein said step of estimating a time includes:

approximating the time until the number of resources in the resource pool will be zero.

16. The machine-implemented method of claim 10 , wherein the determining a probability that the resource pool will become depleted comprises:

determining the probability that the resource pool will become depleted based on a slope and a standard deviation for the resource pool data during a selected period of time.

17. The machine-implemented method of claim 16 , further comprising:

providing an alert to a user in response to determining the probability exceeds a threshold value.

18. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising:

fitting a plurality of functions to resource pool data, each of the functions is fit to data in the resource pool data that covers a different time interval of a plurality of time intervals, each of the plurality of time intervals have at least one data point in common;

determining a measure for each of the functions that defines how well the function fits the resource pool data for the time interval to which the function has been fit;

selecting one of the plurality of functions as a best overall fit based on the measure for each of the functions;

determining an estimated depletion time for the resource pool based on the function that was selected as the best overall fit;

determining a probability that the resource pool will become depleted at the estimated depletion time; and

providing depletion information associated with the resource pool to a user, the depletion information provided in response to said step of determining the probability.

19. The one or more processor readable storage devices of claim 18 , wherein the data includes the number of resources available in the resource pool over a period of time.

20. The one or more processor readable storage devices of claim 18 , wherein said step of fitting a plurality of functions includes:

fitting a linear function to the data in the resource pool using linear regression for each of the plurality of time intervals.

21. The one or more processor readable storage devices of claim 18 , wherein said step of determining a probability that the resource pool will become depleted includes determining the probability that the resource pool will become depleted based on a slope and a standard deviation for the resource pool data during a selected period of time; and wherein the step of providing depletion information includes providing an alert to a user in response to determining the probability.

22. The one or more processor readable storage devices of claim 21 , wherein said step of determining a probability that the resource pool will become depleted includes:

determining the probability exceeds a warning threshold.

23. The one or more processor readable storage devices of claim 22 , wherein the warning threshold is a probability of at least ninety-percent.

24. The one or more processor readable storage devices of claim 22 , further comprising:

determining the probability exceeds the warning threshold for a minimum period of time; and

providing a second alert to a user.

25. An apparatus for processing data, comprising:

a communication interface;

a storage device; and

one or more processors in communication with said storage device and said communication interface, said one or more processors perform a method comprising:

receiving unavailability data that describes the unavailability of a set of resources;

dividing the resource pool data into a plurality of groups having different numbers of data points, each of the groups represents a different time interval, groups associated with more recent time intervals have fewer data points, each group contains at least one data point in common;

applying linear regression to the unavailability data in each of the groups to determine a best fit function for each of the plurality of groups;

selecting one of the best fit functions as a best model for projecting when the set of resources will become unavailable;

approximating a time at which the set of resources will become unavailable based on said selected one of a plurality of best fit functions; and

providing an alert indicating the time at which the set of resources is approximated to become unavailable.

26. The apparatus of claim 25 , wherein the unavailability data includes a number of resources available at different points in time.

27. The apparatus of claim 25 , wherein said step of approximating includes:

extending the selected best fit function to approximate when the set of resources will become unavailable.

Assignments (3)
MERGER Recorded Apr 15, 2012
From: COMPUTER ASSOCIATES THINK, INC.
To: CA, INC.
Reel/Frame 028047/0913 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2007
From: WILY TECHNOLOGY, INC.
To: COMPUTER ASSOCIATES THINK, INC.
Reel/Frame 019140/0405 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2005
From: ADDLEMAN, MARK J.; BLEY, JOHN; ZUZGA, BRIAN
To: WILY TECHNOLOGY, INC.
Reel/Frame 016872/0855 →
Continuity (2)
Provisional Application 6072572900 · Oct 12, 2005
Related Publication 20070083648A1 · Apr 12, 2007