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.