Patent ID: 8261285

Claim:
A data processing system, comprising: a plurality of processors, wherein said processors are connected to a host bus; a system memory accessible to said processors; means for measuring a utilization of the system; means for determining a number of active processors, wherein the number is indicative of a power drawn by the data processing system; means for determining whether the number of active processors is appropriate for the measured utilization; and responsive to determining that the utilization is not appropriate, means for altering the number of active processors; wherein the means for measuring the current utilization comprises means for determining a number of active tasks on the system; wherein the means for determining whether the number of active processors is appropriate, comprises means for determining an upper threshold and comparing the utilization to the upper threshold and means for determining a lower threshold and comparing the utilization to the lower threshold; wherein the means for altering the number of active processors includes means for incrementing the number of active processors if the processor utilization exceeds the upper threshold and means for decrementing the number of active processors if the utilization is less then the lower threshold; wherein determining upper and lower thresholds includes determining upper and lower threshold factors and multiplying the upper and lower threshold factors by N and N−1 respectively, wherein N is the number of active processors; wherein the upper and lower threshold factors are determined based, at least in part, on date information indicative of the day of month, day of week, and time of day.