A system and method are described for constructing and implementing
generic software agents for automated tuning of computer systems and
applications. The framework defines the modules and interfaces to allow
agents to be created in a modular fashion. The specifics of the target
system are captured by adaptors that provide a uniform interface to the
target system. Data in the agent is managed by a metric manager, and
controller modules implement the desired control algorithms. The modular
structure and common interfaces allow for the construction of generic
agents that are applicable to a wide variety of target systems, and can
use a wide variety of control algorithms.