Methods and apparatus for achieving thermal management using processing task scheduling
First Claim
Patent Images
1. A processing system, comprising:
- a plurality of processors, each of the plurality of processors being configured to execute tasks, and at least some of the plurality of processors having a thermal attribute associated therewith;
a memory controller coupled to the plurality of processors; and
a scheduler in operative communication with the plurality of processors and the memory controller, the scheduler being configured to choose different tasks to be assigned to a plurality of queues for execution by selected ones of the plurality of processors;
wherein;
the tasks in the plurality of queues are chosen for execution by the selected processors based on at least one of the thermal attribute of each selected processor and a priority of each task;
each of the plurality of processors has a thermal threshold associated therewith, and the tasks are chosen for execution by the selected processors so that the thermal threshold is not exceeded;
different tasks are dynamically chosen from the plurality of queues so that the thermal threshold of each selected processor is not exceeded; and
a given one of the tasks initially assigned for execption by a first one of the selected processors is reassigned to a second one of the selected processors based at least on the thermal threshold of the first selected processor.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention provides apparatus and methods to perform thermal management in a computing environment. In one embodiment, thermal attributes are associated with operations and/or processing components, and the operations are scheduled for processing by the components so that a thermal threshold is not exceeded. In another embodiment, hot and cool queues are provided for selected operations, and the processing components can select operations from the appropriate queue so that the thermal threshold is not exceeded.
-
Citations
20 Claims
-
1. A processing system, comprising:
-
a plurality of processors, each of the plurality of processors being configured to execute tasks, and at least some of the plurality of processors having a thermal attribute associated therewith; a memory controller coupled to the plurality of processors; and a scheduler in operative communication with the plurality of processors and the memory controller, the scheduler being configured to choose different tasks to be assigned to a plurality of queues for execution by selected ones of the plurality of processors; wherein; the tasks in the plurality of queues are chosen for execution by the selected processors based on at least one of the thermal attribute of each selected processor and a priority of each task; each of the plurality of processors has a thermal threshold associated therewith, and the tasks are chosen for execution by the selected processors so that the thermal threshold is not exceeded; different tasks are dynamically chosen from the plurality of queues so that the thermal threshold of each selected processor is not exceeded; and a given one of the tasks initially assigned for execption by a first one of the selected processors is reassigned to a second one of the selected processors based at least on the thermal threshold of the first selected processor. - View Dependent Claims (2, 3, 4, 7, 8, 9, 10, 19, 20)
-
-
5. A processing system, comprising:
-
a plurality of processors, each of the plurality of processors being configured to execute tasks, and at least some of the plurality of processors having a thermal attribute associated therewith; a memory controller coupled to the plurality of processors; and a scheduler in operative communication with the plurality of processors and the memory controller, the scheduler being configured to choose different tasks to be assigned to a plurality of queues for execution by selected ones of the plurality of processors; wherein; the tasks in the plurality of queues are chosen for execution by the selected processors based on at least one of the thermal attribute of each selected processor and a priority of each task; each task has a thermal attribute associated therewith; the plurality of queues includes a first queue and a second queue; the scheduler is configured to assign one or more tasks to each of the first and second queues based on the thermal attributes of the tasks; and a given one of the plurality of processors is configured to reassign a task chosen for execution by a first selected processor based at least on a thermal threshold of the first selected processor. - View Dependent Claims (6)
-
-
11. A method of managing tasks in a computing system having a plurality of processors, the method comprising:
-
identifying a plurality at tasks for execution by the plurality of processors, at least some of the plurality of processors having a thermal attribute associated therewith; assigning, by a scheduler, different ones of the plurality of tasks to a plurality of queues for execution by selected ones of the plurality of processors; and executing, by the selected processor, the different tasks assigned to the plurality of queues; wherein; the tasks in the plurality of queues are assigned for execution by the selected processors based on at least one of the thermal attribute of each selected processor and a priority of each task; each of the plurality of processor has a thermal threshold associated therewith, and the tasks are chosen for execution by the selected processors so that the thermal threshold is not exceeded; different tasks are dynamically chosen from the plurality of queues so that the thermal threshold of each selected processor is not exceeded; the method further includes reassigning a given one of the tasks initially assigned for execution by a first one of the selected processors to a second one of the selected processors based at least on the thermal threshold of the first selected processor. - View Dependent Claims (12, 13, 14, 16, 17, 18)
-
-
15. A method of managing tasks in a computing system having a plurality of processors, the method comprising:
-
identifying a plurality of tasks for execution by the plurality of processors, at least some of the plurality of processors having a thermal attribute associated therewith; assigning, by a scheduler, different ones of the plurality of tasks to a plurality of queues for execution by selected ones of the plurality of processors; and executing, by the selected processors, the different tasks assigned to the plurality of queues; wherein; the tasks in the plurality of queues are assigned for execution by the selected processors based on at least one of the thermal attribute of each selected processor and a priority of each task; each task has a thermal attribute associated therewith; the plurality of queues includes a first queue and a second queue; assigning the different tasks to the plurality of queues includes assigning one or more tasks to each of the first and second queues based on the thermal attributes of the tasks; and reassigning, by a given one of the plurality of processors, a task chosen for execution by a first selected processor based at least on a thermal threshold of the first selected processor.
-
Specification