Thermal management of a multi-processor computer system
AssigneeInternational Business Machines Corporation
InventorsSusumi Arai, Ryuji Orita
Life of this patent
Estimating the term…
Abstract
A method and apparatus are provided for thermal management of a multiprocessor computer system. The temperatures of the various processors within a multiprocessor system are monitored. When a processor is identified as overheated, a dummy process will be assigned to it, causing all other processes to be put on hold, thereby reducing the heat output of that processor. When the temperature of the processor lowers below another predetermined value, then the dummy process is terminated.
Claims29
A method comprising:
- monitoring the temperature of each of a plurality of selected processors in a multi-processor computer system;
- identifying any processor for which the temperature is above a predetermined upper temperature or below a predetermined lower temperature;
- spawning a dummy process and assigning that dummy process to any processor so identified with a temperature above said predetermined upper temperature;
- assigning all other processes running on said processor to which a dummy process has been assigned to a process holding queue associated with said processor;
- and
- identifying any processor for which the temperature is below said predetermined lower temperature and upon which a dummy process is running, and terminating said dummy process.
A method comprising:
- monitoring the temperature of each of a plurality of selected processors in a multi-processor computer system;
- identifying any processor for which the temperature is above a predetermined upper temperature;
- spawning a dummy process of finite duration and assigning that dummy process to any processor so identified with a temperature above said predetermined upper temperature and which is not already running a dummy process;
- assigning all other processes running on said processor to which a dummy process has been assigned to a process holding queue associated with said processor.
A processor readable storage medium containing processor readable code for programming a processor to perform a method comprising the steps of:
- monitoring the temperature of each of a plurality of processors in a multi-processor computer system;
- identifying any processor for which the temperature is above a predetermined upper temperature or below a predetermined lower temperature;
- spawning a dummy process and assigning that dummy process to any processor so identified with a temperature above said predetermined temperature range;
- assigning all other processes running on said processor to which a dummy process has been assigned to a process holding queue associated with said processor;
- and
- identifying any processor for which the temperature is below said predetermined temperature range and upon which a dummy process is running, and terminating said dummy process.
A processor readable storage medium containing processor readable code for programming a processor to perform a method comprising the steps of:
- monitoring the temperature of each of a plurality of selected processors in a multi-processor computer system;
- identifying any processor for which the temperature is above a predetermined upper temperature;
- spawning a dummy process of finite duration and assigning that dummy process to any processor so identified with a temperature above said predetermined upper temperature and which is not already running a dummy process;
- assigning all other processes running on said processor to which a dummy process has been assigned to a process holding queue associated with said processor.
A computing system comprising:
- a plurality of processors, each processor including a central processing unit, a temperature sensor which measures the temperature of the central processing unit, and a process queue for holding processes assigned to that processor but of lower priority than another process also assigned to that processor;
- a system level thermal monitor which monitors each of a plurality of temperature sensors associated with each of selection of said plurality of processors and assigns a dummy process to any processor for which the temperature has exceeded a predetermined value, and terminates said dummy process when the temperature of said processor drops below a second predetermined value;
- a process holding queue associated with each of said processors for holding non-running processes;
- and
- a bus for transmitting signals between any of said components.
A thermal monitor comprising:
- means for monitoring the temperature of each of a plurality of temperature sensors associated with each of a plurality of processors;
- means for identifying any processor which has exceeded a predetermined temperature;
- means for spawning a dummy process and assigning said dummy process to said identified processor;
- and
- means for identifying any processor to which a dummy process has been assigned whose temperature has dropped below a second predetermined value and terminating said dummy process running on said processor.
A system comprising:
- means for monitoring the temperature of each of a plurality of temperature sensors associated with each of a plurality of processors;
- means for identifying any processor which has exceeded a predetermined temperature;
- means for spawning a dummy process and assigning said dummy process to said identified processor;
- means for identifying any processor to which a dummy process has been assigned whose temperature has dropped below a second predetermined value and terminating said dummy process running on said processor.
- means for identifying free processors and moving non-dummy processes in process queues of processors running dummy processes to such free processors when free processors are available.
A method for system integration comprising operatively interconnecting the following components:
- a plurality of processors, each processor including a central processing unit, a temperature sensor which measures the temperature of the processor and a process queue for holding processes assigned to that processor but of lower priority than another process also assigned to that processor;
- a thermal monitor which monitors each of a plurality temperature sensors associated with each of said plurality of processors and assigns a dummy process to any processor for which the temperature has exceeded a predetermined value, and terminates said dummy process when the temperature of said processor drops below a second predetermined value;
- and
- a process scheduler which identifies any free processors and moves processes in holding queues of processors running dummy processes longer than a pre-determined time.
Dependencies are inferred from the claim text.