Multiprocessor computer and program
First Claim
Patent Images
1. A multiprocessor computer which performs a plurality of tasks with a plurality of processors connected to one another, comprising:
- a plurality of temperature sensing devices configured to sense temperatures of the plurality of processors;
a storage device which stores a temperature management table in which the temperatures sensed by the plurality of temperature sensing devices are stored according to identifications of the plurality of processors;
wherein the each of the plurality of tasks is individually associated with a heat emission parameter, the heat emission parameter indicating a heat emission generated if a processor executes the task;
an extraction device configured to select one or more processors that execute none of the plurality of tasks, when at least one of the other processors of the plurality of processors is executing the plurality of tasks;
a first selection device configured to select one processor whose temperature sensed by the temperature sensing devices is the lowest from the one or more processors, that execute none of the plurality of tasks, selected by the extraction device, based on the temperature management table;
a second selection device configured to refer to heat emission parameters associated with a plurality of tasks to be newly executed and select a task whose heat emission is the highest, when the plurality of tasks to be newly executed are to be assigned to any ones of the processors selected by the extraction device;
an assignment device configured to assign the task selected by the second selection device to the processor selected by the first selection device;
a decision device configured to decide whether there is one or more tasks from the plurality of tasks to be newly executed that have not yet been assigned to a processor by the assignment device; and
a control device configured to control the first selection device, second selection device, and assignment device to assign unassigned tasks to the plurality of processors, when the decision device has decided that there is one or more tasks from the plurality of tasks to be newly executed that have not yet been assigned to processors by the assignment device,the assignment device further includingan overheating prediction device configured to predict whether there is a processor which could overheat, on the basis of the temperatures sensed by the temperature sensing devices, after all the tasks to be newly executed have been assigned to the processors by the assignment device, but before the tasks are dispatched to the processors, anda stand-by device configured to turn off a power supply of the processor that could overheat predicted by the overheating prediction device without dispatching the tasks until the extraction device has extracted another processor, when the result of the prediction has shown that there is the processor that could overheat if a task is dispatched to the processor; and
the stand-by device includinga dummy task creating device configured to create a dummy task which has an execution time as long as a waiting time of a task to be dispatched until the extraction device has extracted another processor and whose heat emission is approximately zero and which is given priority in execution over other tasks,a dummy task adding device configured to add the dummy task to a set of tasks currently being executed,a scheduling decision device configured to decide whether scheduling is feasible on a set of tasks being executed, taking the waiting time of the task to be dispatched into account, after the addition of the dummy task, anda scheduling device configured to execute the scheduling in such a manner that the dummy task is given priority in execution over other tasks, when the result of the decision has shown that scheduling is feasible.
1 Assignment
0 Petitions
Accused Products
Abstract
According to an aspect of the present invention, the processor temperatures can be leveled among processors, thereby suppressing the occurrence of stop of processing due to overheating. For example, on the basis of the temperatures of the processors sensed by temperature sensors, the control IC assigns the processor whose temperature is the lowest to the task whose heat emission is the highest. This makes it possible to level the processor temperatures among processors and suppress occurrence of stop of processing due to overheating.
35 Citations
2 Claims
-
1. A multiprocessor computer which performs a plurality of tasks with a plurality of processors connected to one another, comprising:
-
a plurality of temperature sensing devices configured to sense temperatures of the plurality of processors; a storage device which stores a temperature management table in which the temperatures sensed by the plurality of temperature sensing devices are stored according to identifications of the plurality of processors; wherein the each of the plurality of tasks is individually associated with a heat emission parameter, the heat emission parameter indicating a heat emission generated if a processor executes the task; an extraction device configured to select one or more processors that execute none of the plurality of tasks, when at least one of the other processors of the plurality of processors is executing the plurality of tasks; a first selection device configured to select one processor whose temperature sensed by the temperature sensing devices is the lowest from the one or more processors, that execute none of the plurality of tasks, selected by the extraction device, based on the temperature management table; a second selection device configured to refer to heat emission parameters associated with a plurality of tasks to be newly executed and select a task whose heat emission is the highest, when the plurality of tasks to be newly executed are to be assigned to any ones of the processors selected by the extraction device; an assignment device configured to assign the task selected by the second selection device to the processor selected by the first selection device; a decision device configured to decide whether there is one or more tasks from the plurality of tasks to be newly executed that have not yet been assigned to a processor by the assignment device; and a control device configured to control the first selection device, second selection device, and assignment device to assign unassigned tasks to the plurality of processors, when the decision device has decided that there is one or more tasks from the plurality of tasks to be newly executed that have not yet been assigned to processors by the assignment device, the assignment device further including an overheating prediction device configured to predict whether there is a processor which could overheat, on the basis of the temperatures sensed by the temperature sensing devices, after all the tasks to be newly executed have been assigned to the processors by the assignment device, but before the tasks are dispatched to the processors, and a stand-by device configured to turn off a power supply of the processor that could overheat predicted by the overheating prediction device without dispatching the tasks until the extraction device has extracted another processor, when the result of the prediction has shown that there is the processor that could overheat if a task is dispatched to the processor; and the stand-by device including a dummy task creating device configured to create a dummy task which has an execution time as long as a waiting time of a task to be dispatched until the extraction device has extracted another processor and whose heat emission is approximately zero and which is given priority in execution over other tasks, a dummy task adding device configured to add the dummy task to a set of tasks currently being executed, a scheduling decision device configured to decide whether scheduling is feasible on a set of tasks being executed, taking the waiting time of the task to be dispatched into account, after the addition of the dummy task, and a scheduling device configured to execute the scheduling in such a manner that the dummy task is given priority in execution over other tasks, when the result of the decision has shown that scheduling is feasible.
-
-
2. A computer-readable storage media encoded with computer executable instructions, which when executed by a multiprocessor computer which performs a plurality of tasks with a plurality of processors connected to one another, cause the multiprocessor computer to perform a method comprising:
-
executing temperature sensing processes of sensing temperatures of the plurality of processors; storing a temperature management table in which the temperatures sensed of the plurality of processors are stored according to identifications of the plurality of processors; wherein the each of the plurality of tasks is individually associated with a heat emission parameter, the heat emission parameter indicating a heat emission generated if a processor executes the task; executing an extraction process of selecting one or more processors that execute none of the plurality of tasks, when at least one of the other processors of the plurality of processors is executing the plurality of tasks; executing a first selection process of selecting one processor whose temperature sensed in the temperature sensing process is the lowest from the one or more processors, that execute none of the plurality of tasks, selected in the extraction process, based on the temperature management table; executing a second selection process of referring to heat emission parameters associated with a plurality of tasks to be newly executed and selecting a task whose heat emission is the highest, when the tasks to be newly executed are to be assigned to any ones of the processors selected in the extraction process; executing an assignment process of assigning the task selected in the second selection process to the processor selected in the first selection process; executing a decision process of deciding whether there is one or more tasks from the plurality of tasks to be newly executed that have not yet been assigned to a processor in the assignment process; and controlling the first selection process, second selection process, and assignment process sequentially to assign unassigned tasks to the plurality of processors, when the decision process has decided that there is one or more tasks from the plurality of tasks to be newly executed that have not yet been assigned to processors by the assignment process, the assignment process further including an overheating prediction process which predicts on the basis of the temperatures sensed by the temperature sensing devices whether there is a processor to be overheated, after all the tasks to be newly executed have been assigned to the processors in the assignment process, but before the tasks are dispatched to the processors, and a stand-by process which turns off a power supply of the processor to be overheated predicted in the overheating prediction process without dispatching the tasks until the extraction process has extracted another processor, when the result of the overheating prediction process has shown that there is the processor to be overheated predicted in the overheating prediction process if a task is dispatched to the processor; and the stand-by process including a process of creating a dummy task which has an execution time as long as a waiting time of a task to be dispatched until the extraction process has extracted another processor and whose heat emission is approximately zero and which is given priority in execution over other tasks, a process of adding the dummy task to a set of tasks currently being executed, a process of deciding whether scheduling is feasible on a set of tasks being executed, taking the waiting time of the task to be dispatched into account, after the addition of the dummy task, and a process of executing the scheduling in such a manner that the dummy task is given priority in execution over other tasks, when the result of the decision has shown that scheduling is feasible.
-
Specification