Computer activity monitor providing idle thread and other event sensitive clock and power control
DC CAFCFirst Claim
1. A power management system for use in a computer system comprising a plurality of computer system devices including a CPU device, a plurality of peripheral devices, a memory device, and a system bus which directly connects the CPU device with the peripheral devices, said computer system adapted to perform a plurality of activities, wherein said power management system comprises:
- means for identifying each of said plurality of activities as either an active activity or an idle activity and for associating each of said plurality of activities with a predetermined activity value and with either it first arithmetic sign for activities identified as active activities or with a second arithmetic sign opposite to said first sign for activities identified as idle activities; and
an activity monitor comprising;
an activity count accumulator for accumulating an activity count upon the occurrence of each of said plurality of activities including;
means for adding to a stored activity count, upon the occurrence of any one of said plurality of activities, a predetermined activity value associated with said particular activity; and
means for comparing the accumulated stored activity count with a conserve threshold and for causing a CONSERVE signal if the accumulated activity count has a predetermined algebraic relationship relative to the conserve threshold; and
a power control circuit coupled to said activity monitor which in response to the CONSERVE signal transitions from an ON state to a REDUCED state in which the power consumption of the computer is reduced relative to the power consumption in the ON state;
wherein the power control circuit comprises a clock switching circuit and wherein;
the clock switching circuit couples the CPU device to a clocking signal of a first frequency in the ON state; and
the clock switching circuit provides to the CPU a clocking signal of a second frequency in the REDUCED state.
5 Assignments
Litigations
0 Petitions
Accused Products
Abstract
A power conservation system for use in a computer system. The power system has an activity monitor and a plurality of modes of operation. The activity monitor can place the computer system in a reduced power consumption state during periods of low activity without waiting for a period of complete inactivity. By controlling the power mode in response to the activity of the computer system, the power consumption of the computer system can be controlled.
133 Citations
18 Claims
-
1. A power management system for use in a computer system comprising a plurality of computer system devices including a CPU device, a plurality of peripheral devices, a memory device, and a system bus which directly connects the CPU device with the peripheral devices, said computer system adapted to perform a plurality of activities, wherein said power management system comprises:
-
means for identifying each of said plurality of activities as either an active activity or an idle activity and for associating each of said plurality of activities with a predetermined activity value and with either it first arithmetic sign for activities identified as active activities or with a second arithmetic sign opposite to said first sign for activities identified as idle activities; and an activity monitor comprising; an activity count accumulator for accumulating an activity count upon the occurrence of each of said plurality of activities including;
means for adding to a stored activity count, upon the occurrence of any one of said plurality of activities, a predetermined activity value associated with said particular activity; andmeans for comparing the accumulated stored activity count with a conserve threshold and for causing a CONSERVE signal if the accumulated activity count has a predetermined algebraic relationship relative to the conserve threshold; and a power control circuit coupled to said activity monitor which in response to the CONSERVE signal transitions from an ON state to a REDUCED state in which the power consumption of the computer is reduced relative to the power consumption in the ON state; wherein the power control circuit comprises a clock switching circuit and wherein; the clock switching circuit couples the CPU device to a clocking signal of a first frequency in the ON state; and
the clock switching circuit provides to the CPU a clocking signal of a second frequency in the REDUCED state.
-
-
2. A method for operating a computer system comprising a plurality of computer system circuits including a CPU, a plurality of input/output circuits, and a memory circuit, and having at least three functional power consumption modes including a first mode, a second mode, and a third mode, said computer system adapted to perform a plurality of activities including execution of threads associated with one of an active class and an idle class, wherein the method comprises the steps of:
-
identifying each of said plurality of activities as either said active class activity or said idle class activity; while operating in said first mode, monitoring the occurance or non occurrence of said activities of the computer system, including the steps of;
accumulating a count indicating the time duration said CPU has allocated to performing said idle class activities within a predetermined period of time;
comparing the accumulated count with a threshold count;
causing a first-mode to second-mode transition command signal if the accumulated count is greater than or equal to the threshold count; and
switching the power mode of the computer system from said first-mode to said second-mode in response to the first-mode to second-mode transition command signal;while operating in said second mode, monitoring said computer to detect occurrence or non-occurrence of a second predefined event, and generating a second-mode to third-mode transition command signal in response to said second event detection; and
changing said operating mode from said second-mode in response to said second-mode to third-mode transition command signal;while operating in said second mode wherein a second frequency of said CPU clock is reduced relative to a first frequency at which said CPU clock operates during operation in said first mode, causing an ACTIVITY signal in response to receiving an interrupt from a timer circuit indicating occurrence of a predetermined timer time-out condition, and causing clock signal to be withheld from at least one of said devices in response to occurrence of said timeout condition; and while operating in either said second-mode or said third-mode, detecting the occurance of an active class activity and switching the power mode of the computer system from said second-mode or from said third-mode to said first-mode in response to said detection; said first operating mode characterized by maintaining clocking of said CPU at said first frequency; said second operating mode characterized by clocking said CPU at said second frequency less that said first frequency or by not maintaining clocking of said CPU; and said third operating mode characterized by maintaining operation of said memory to preserve the integrity of data stored therein; said switching of operating modes in response to sensed activity thereby reducing the power consumption of the computer system. - View Dependent Claims (3, 4)
-
-
5. A power management system for use in a computer system comprising a plurality of computer system devices including a CPU device, a plurality of peripheral devices, a memory device, and a system bus which directly connects the CPU device with the peripheral devices, said computer system adapted to execute a plurality of function calls, wherein said power management system comprises:
-
software program code means for identifying each of said plurality of function calls as either an active function call or an idle function call and for associating each of said plurality of function calls with a predetermined function call value and with either a first arithmetic sign for function calls identified as active function calls or with a second arithmetic sign opposite to said first sign for function calls identified as idle function calls; a function call count accumulator for accumulating a function call count upon the occurance of each of said plurality of function calls including means for adding to a stored function call count, upon the occurance of any one of said plurality of function calls, a predetermined function call value associated with each said particular function call; a comparator to compare the accumulated function call count with a conserve threshold and generating a CONSERVE signal if the accumulated function call count has a predetermined first algebraic magnitude relationship relative to the conserve threshold and for generating an ACTIVITY signal if the function call count has a predefined second algebraic magnitude relationship relative to an function call threshold different from the conserve threshold; and a power control circuit coupled to said comparator which in response to the CONSERVE signal transitions from an ON state to a REDUCED state in which the power consumption of the computer is reduced relative to the power consumption in the ON state, and which in response to the ACTIVITY signal transitions from the REDUCED state to the ON state;
said power control circuit further including;a power switching circuit coupling a power supply to a first predetermined group of the computer system devices in the ON state and coupling the power supply to a second predetermined group comprising fewer of the computer system devices than the first predetermined group in the REDUCED state; a clock switching circuit coupling the CPU device to a clocking signal of a first frequency in the ON state and providing to the CPU a clocking signal of a second frequency less than said first frequency in the REDUCED state; and wherein said function calls having high relative execution priorities are associated with a higher predetermined function call value relative to said threshold than said function calls having low relative execution priorities so that for function calls having a relative high execution priority a single occurrence of the function call will force the accumulated count over the function call threshold and force the system to be in the active mode.
-
-
6. A power management system for use in a computer system comprising as hardware, a plurality of computer system devices including a CPU device, a plurality of peripheral devices, a memory device, and a system bus which directly connects the CPU device with the peripheral devices, and as software an operating system for managing program execution on said computer system, said computer system adapted to execute a plurality of program threads, wherein said power management system comprises;
-
software program code means for identifying each of said plurality of threads as either an active class thread or an idle class thread and for associating each of said plurality of threads with a predetermined thread value; a count accumulator for accumulating a count upon the occurance of each of said plurality of threads including means for adding to said count, upon the occurance of any one of said plurality of threads, a predetermined value associated with each said particular thread; a comparator to compare the accumulated count with a conserve threshold and generating a CONSERVE signal if the accumulated count has a predetermined first algebraic magnitude relationship relative to the conserve threshold and for generating an ACTIVITY signal if the count has a predefined second algebraic magnitude relationship relative to a second threshold different from the conserve threshold; and a power control circuit responsive to said comparator which in response to the CONSERVE signal transitions from an ON state to a REDUCED state in which the power consumption of the computer is reduced relative to the power consumption in the ON state, and which in response to the ACTIVITY signal transitions from the REDUCED state to the ON state;
said power control circuit further including;a power switching circuit coupling a power supply to a first predetermined group of the computer system devices in the ON state and coupling the power supply to a second predetermined group comprising fewer of the computer system devices than the first predetermined group in the REDUCED state; a clock switching circuit coupling the CPU device to a clocking signal of a first frequency in the ON state and providing to the CPU a clocking signal of a second frequency equal to the first frequency divided by a divisor greater than one in the REDUCED state; and wherein said threads having high relative execution priorities are associated with a higher predetermined value relative to said threshold than said threads having low relative execution priorities so that for threads having a relative high execution priority a single occurrence of the thread will force the accumulated count over the second threshold and force the system to be in the ON mode.
-
-
7. In a computer system comprising a plurality of system resources including a central processing unit (CPU), a memory device, and an input/output device, and an operating system for managing said system resources, said computer system being operable in any one of a least three operating modes including a first-mode having a first power consumption level, a second-mode having a second power consumption level less than said first power consumption level, and a third-mode having a third power consumption level less than said second power consumption level;
- said computer system operable to execute at least one active class code thread and at least on idle class cod thread;
a method for controlling the operating mode of said computer system comprising;while operating in said first mode, monitoring said computer system to detect occurrence of code threads belonging to said idle class, said first mode monitoring including accumulating a count related to said idle class code thread occurrence detection, and comparing said accumulated count with a threshold count; and
changing said operating mode from said first-mode to said second-mode in response to said accumulated count having a predetermined magnitude relationship with said threshold count; andwhile operating in said second mode, monitoring said computer system to detect occurrence or non-occurrence of a second predefined event; and
changing said operating mode from said second-mode to said third-mode in response to said second event detection;said first operating mode characterized by maintaining clocking of said CPU at a first frequency; said second operating mode characterized by clocking said CPU at a second frequency less than said first frequency or by not maintaining clocking of said CPU; and said third operating mode characterized by maintaining operation of said memory to preserve the integrity of data stored therein. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
- said computer system operable to execute at least one active class code thread and at least on idle class cod thread;
Specification