System and method for automatic workload characterization
First Claim
1. A method comprising:
- generating a log of transactions performed in a computer system, wherein the log of transactions comprises a timestamp for each transaction;
generating a log of resource usage in the computer system, wherein the log of resource usage comprises one or more periods of time during which each of a plurality of resources is used, and wherein the log of resource usage comprises a plurality of system performance metrics which reflect resource consumption by one or more processes that performed the transactions;
comparing the timestamps in the log of transactions to the periods of time in the log of resource usage; and
determining which transactions used which resources based on said comparing the timestamps in the log of transactions to the periods of time in the log of resource usage.
12 Assignments
0 Petitions
Accused Products
Abstract
A system and method for automatic workload characterization are provided. Transactions performed in a computer system may be logged. The log of transactions comprises a timestamp for each transaction. Resource usage in the computer system may be logged. The log of resource usage comprises one or more periods of time during which each of a plurality of resources is used, and the log of resource usage comprises a plurality of system performance metrics which reflect resource consumption by one or more processes that performed the transactions. The timestamps in the log of transactions may be compared to the periods of time in the log of resource usage. It may be determined which transactions used which resources as a result of the comparing the timestamps in the log of transactions to the periods of time in the log of resource usage. One or more workloads may be determined using the determining which transactions used which resources. Heuristics may be used to group processes into workloads.
-
Citations
48 Claims
-
1. A method comprising:
-
generating a log of transactions performed in a computer system, wherein the log of transactions comprises a timestamp for each transaction;
generating a log of resource usage in the computer system, wherein the log of resource usage comprises one or more periods of time during which each of a plurality of resources is used, and wherein the log of resource usage comprises a plurality of system performance metrics which reflect resource consumption by one or more processes that performed the transactions;
comparing the timestamps in the log of transactions to the periods of time in the log of resource usage; and
determining which transactions used which resources based on said comparing the timestamps in the log of transactions to the periods of time in the log of resource usage. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
14. A method comprising:
-
determining a list of transactions performed on a computer system over a time interval;
determining a list of system performance metrics for the computer system over the time interval, wherein the system performance metrics reflect resource consumption by one or more processes that performed the transactions;
determining a correlation coefficient for each of one or more pairs of system performance metrics and transactions;
determining a supporting set of pairs of system performance metrics and transactions whose correlation coefficients exceed a desired correlation value; and
determining a workload using the supporting set, wherein the workload comprises a meaningful partition of transactions performed on the computer system.
-
-
17. A carrier medium comprising program instructions, wherein the program instructions are computer-executable to implement:
-
generating a log of transactions performed in a computer system, wherein the log of transactions comprises a timestamp for each transaction;
generating a log of resource usage in the computer system, wherein the log of resource usage comprises one or more periods of time during which each of a plurality of resources is used, and wherein the log of resource usage comprises a plurality of system performance metrics which reflect resource consumption by one or more processes that performed the transactions;
comparing the timestamps in the log of transactions to the periods of time in the log of resource usage; and
determining which transactions used which resources as a result of the comparing the timestamps in the log of transactions to the periods of time in the log of resource usage.
-
-
30. A carrier medium comprising program instructions, wherein the program instructions are computer-executable to implement:
-
determining a list of transactions performed on a computer system over a time interval;
determining a list of system performance metrics for the computer system over the time interval, wherein the system performance metrics reflect resource consumption by one or more processes that performed the transactions;
determining a correlation coefficient for each of one or more pairs of system performance metrics and transactions;
determining a supporting set of pairs of system performance metrics and transactions whose correlation coefficients exceed a desired correlation value; and
determining a workload using the supporting set, wherein the workload comprises a meaningful partition of transactions performed on the computer system. - View Dependent Claims (31, 32)
-
-
33. A system comprising:
-
a CPU;
a memory coupled to the CPU, wherein the memory stores program instructions which are executable by the CPU to;
generate a log of transactions performed in a computer system, wherein the log of transactions comprises a timestamp for each transaction;
generate a log of resource usage in the computer system, wherein the log of resource usage comprises one or more periods of time during which each of a plurality of resources is used, and wherein the log of resource usage comprises a plurality of system performance metrics which reflect resource consumption by one or more processes that performed the transactions;
compare the timestamps in the log of transactions to the periods of time in the log of resource usage; and
determine which transactions used which resources as a result of the comparing the timestamps in the log of transactions to the periods of time in the log of resource usage. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 47, 48)
-
-
46. A system comprising:
-
a CPU;
a memory coupled to the CPU, wherein the memory stores program instructions which are executable by the CPU to;
determine a list of transactions performed on a computer system over a time interval;
determine a list of system performance metrics for the computer system over the time interval, wherein the system performance metrics reflect resource consumption by one or more processes that performed the transactions;
determine a correlation coefficient for each of one or more pairs of system performance metrics and transactions;
determine a supporting set of pairs of system performance metrics and transactions whose correlation coefficients exceed a desired correlation value; and
determine a workload using the supporting set, wherein the workload comprises a meaningful partition of transactions performed on the computer system.
-
Specification