IP Library Granted Patent US 7,292,957
Granted Patent B1
US 7,292,957 · App. 11/043,764 · Granted Nov 6, 2007

Cost efficient performance statistics gathering using logarithmic indexing

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,292,957
App. No.
11/043,764
Granted
Nov 6, 2007
Kind
B1
Abstract

A system for a distributed computing network for managing instrumentation information from a plurality of network-connected managed entities. One or more instrumentation processes are coupled to each of the network-connected managed entities and configured to gather performance metric values. A first classification process is responsive to information describing a type of input/output operation being performed and is configured to select one or more counters based upon the type of input/output operation being performed. A second classification process is coupled to receive a performance metric value from the one or more instrumentation processes. The second classification process is responsive to a computed logarithm of a measured value of at least one metric to select and increment a particular counter of the one or more counters selected by the first classification process.

Claims (35)

1. A computer-readable storage medium tangibly embodying a program of instructions executable by a machine wherein said program of instruction comprises a plurality of program codes for management of a distributed computing network, said program of instruction comprising:

program code for one or more instrumentation processes having interfaces for generating performance metric values;

program code for a data structure having a plurality of logarithmically indexed counters; and

program code for processes that are responsive to the completion of an input/output operation and coupled to the instrumentation processes to receive the value of one of the performance metrics and increment a selected one of the indexed counters based upon the logarithm of the received value.

2. The program of instruction of claim 1 wherein the counters represent a plurality of categories wherein each category is associated with a range spanning from a starting point to an ending point and wherein the starting point and ending point define a logarithmic range.

3. The program of instruction of claim 1 wherein the counter is selected based upon a base-2 logarithm of the value of the performance metric.

4. The program of instruction of claim 1 wherein the program code for data structure comprises:

a first field holding a value indicating the maximum measured value for a particular performance metric that has occurred over a measurement period.

5. The program of instruction of claim 4 wherein the particular performance parameter is selected from the group consisting of: input/output operations per second (IOPs), throughput, and response time.

6. The program of instruction of claim 1 wherein the program code for the data structure implements a plurality of sets of logarithmically indexed counters where each set is associated with a particular type of loading and wherein the program code for the processes that select one of the indexed counters also select a particular one of the set of counters based upon the type of loading presented by the completed input/output operation.

7. The program of instruction software product of claim 6 wherein the type of loading information used to select a particular one of the sets of counters comprises information selected from the group consisting of: input/output operation size, whether the completed input output operation is random or sequential, and whether the completed input/output operation is a read or a write operation.

8. A management system for a distributed computing network comprising:

a management console having interfaces for accessing instrumentation information from a plurality of network-connected managed entities;

one or more instrumentation processes coupled to each of the network-connected managed entities and configured to gather performance metric values;

a first classification process responsive to a information describing a type of input/output operation being performed and configured to select one or more counters based upon the type of input/output operation being performed; and

a second classification process coupled to receive a performance metric value from the one or more instrumentation processes, wherein the second classification process is responsive to a computed logarithm of a measured value of at least one metric to select and increment a particular counter of the one or more counters selected by the first classification process.

9. The management system of claim 8 further comprising a data structure implementing the plurality of counters.

10. The management system of claim 9 wherein the counters represent a plurality of categories wherein each category is associated with a range spanning from a starting point to an ending point and wherein the starting point and ending point define a logarithmic range.

11. The management system of claim 8 wherein the first classification process is responsive to information selected from the group consisting of:

input/output operation size, whether the completed input output operation is random or sequential, and whether the completed input/output operation is a read or a write operation.

12. The management system of claim 8 wherein the second classification process performs a base-2 logarithm of the measured value of the at least one metric.

13. The management system of claim 8 wherein the at least one measured value used by the second classification process comprises response time of the input/output operation being performed.

14. The management system of claim 8 wherein the at least one measured value used by the second classification process comprises average queue depth of the input/output operation being performed.

15. The management system of claim 8 wherein the at least one measured value used by the second classification process comprises command receive to command issue time of the input/output operation being performed.

16. A computer implemented method for collecting performance statistics comprising:

Accessing, by said computer, instrumentation information from a plurality of network-connected managed entities;

in response to completing a particular input/output operation, identifying a set of counters comprising one or more counters based upon the type of operation that was completed; and

in response to completing the particular input/output operation, selecting a particular counter from the identified set of counters based upon a computed logarithm of a measured value of at least one metric; and

incrementing the selected counter.

17. The method of claim 16 wherein the act of selecting a particular counter from the identified set of counters based upon a computed logarithm uses a base-2 logarithmic computation.

18. A data structure implemented in a memory of a computing device, the data structure being configured for collecting performance statistics related to activity performed by the computing device, wherein the data structure comprises:

one or more arrays where each array corresponds to a particular type of activity of the computing device;

a plurality of elements within each array, wherein each element of the array corresponds to a logarithmically defined range for a selected characteristic of the activity being performed by the computing device;

a plurality of fields within each element of the array, wherein each field holds one or more values of a particular one of the performance statistics being gathered.

19. The data structure of claim 18 wherein at least one field within an element comprises a sub-array, wherein the sub-array has a plurality of elements and each of the plurality of elements in the sub-array corresponds to a logarithmically defined range for a selected characteristic of a performance statistic being gathered.

Assignments (1)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037302/0869 →