Patent ID: 8516503

Claim:
A system for self-tuning of hardware resources, comprising: a processor; a hardware layer comprising a hardware resource; an operating system executing on the processor, wherein the operating system is configured to: determine the hardware resource; obtain a profile for the hardware resource from a persistent storage device, wherein the profile for the hardware resource specifies a hardware architecture; wherein the profile comprises a metric with which to monitor utilization of the hardware resource, and wherein the metric is a performance indicator of the hardware resource with the hardware architecture; determine, from the profile, the metric; determine a first hardware resource management policy for governing utilization of the hardware resource; determine a first primary sub-range and a first secondary sub-range of the metric based on the first hardware resource management policy, wherein the first secondary sub-range includes the first primary sub-range; and send a first hardware resource management policy directive to a configuration engine, wherein the first hardware resource management policy directive comprises the metric, the first primary sub-range and the first secondary sub-range; a metric monitoring unit, wherein the metric monitoring unit is configured to: monitor the hardware resource to obtain a first hardware resource data value for the metric; the configuration engine, wherein the configuration engine is configured to: receive the first hardware resource management policy directive from the operating system; determine the first primary sub-range and the first secondary sub-range for the metric from the first hardware resource management policy directive; obtain the first hardware resource data value for the metric from the metric monitoring unit; when the first hardware resource data value for the metric is outside the first primary sub-range and inside the first secondary sub-range: determine, by the hardware layer in the system and without the operating system, a first hardware resource optimization routine to bring utilization of the hardware resource into compliance with the first primary sub-range; and execute, in the hardware layer, the first hardware resource optimization routine; when the first hardware resource data value for the metric is outside both the first primary sub-range and the first secondary sub-range: determine, by the operating system, a second hardware resource management policy directive for the hardware resource; and send the second hardware resource management policy directive to the configuration engine.