Leveraging thermal profiles of processing tasks to dynamically schedule execution of the processing tasks
AssigneeInternational Business Machines Corporation
InventorParth Sanjaybhai Shah
Life of this patent
Estimating the term…
Abstract
Embodiments relate to a system, program product, and method for leveraging thermal profiles of processing tasks to dynamically schedule execution of the processing tasks. Thermal profiles of the processing tasks are generated, where the thermal profiles include core hardware and core processing measurements and predictions of thermal performance based on the measurements. The execution of the processing tasks are scheduled in processing devices to mitigate a potential for reducing a margin to a hardware thermal limit.
Claims20
A computer system comprising:
- one or more multi-core processing devices, each multi-core processing device of the one or more multi-core processing devices comprising two or more cores, the two or more cores configured to process one or more first instances of one or more processing tasks and one or more second instances of the one or more processing tasks;
- one or more memory devices operably coupled to the one or more multi-core processing devices;
- one or more hardware thermal counters coupled to each core of the two or more cores;
- one or more core processing performance counters coupled to each core of the two or more cores;
- and
- a scheduler module residing within the one or more memory devices, wherein the one or more multi-core processing devices are configured to implement the scheduler module, the scheduler module configured to:
- record one or more measurements of the two or more cores contemporaneously with the processing of the one or more first instances of the one or more processing tasks, wherein the one or more measurements include core thermal measurements and core processing performance measurements;
- generate, at least partially subject to the one or more measurements, one or more predictions of one or more thermal effects of processing the one or more second instances of the one or more processing tasks on the two or more cores;
- generate, subject to the one or more measurements and the one or more predictions of the one or more thermal effects, a thermal profile of each process task of the one or more first instances of the one or more processing tasks and the one or more second instances of the one or more processing tasks, thereby generating one or more task thermal profiles;
- and
- distribute, dynamically, subject to the one or more task thermal profiles, processing of the one or more second instances of the one or more processing tasks to the two or more cores.
A computer program product for leveraging thermal profiles of processing tasks, the computer program product comprising:
- one or more computer readable storage media;
- and
- program instructions collectively stored on the one or more computer-readable storage media, the program instructions comprising:
- program instructions to process one or more first instances of one or more processing tasks and one or more second instances of the one or more processing tasks through two or more cores of one or more multi-core processing devices;
- program instructions to record one or more measurements of the two or more cores contemporaneously with the processing of the one or more first instances of the one or more processing tasks, wherein the one or more measurements include core thermal measurements and core processing performance measurements;
- program instructions to generate, at least partially subject to the one or more measurements, one or more predictions of one or more thermal effects of processing the one or more second instances of the one or more processing tasks on the two or more cores;
- program instructions to generate, subject to the one or more measurements and the one or more predictions of the one or more thermal effects, a thermal profile of the one or more first instances of the one or more processing tasks and the one or more second instances of the one or more processing tasks, thereby generating one or more task thermal profiles;
- and
- program instructions to distribute, dynamically, subject to the one or more task thermal profiles, processing of the one or more second instances of the one or more processing tasks to the two or more cores.
A computer-implemented method comprising:
- processing one or more first instances of one or more processing tasks through two or more cores of one or more multi-core processing devices;
- recording one or more measurements of the two or more cores contemporaneously with the processing of the one or more first instances of the one or more processing tasks, wherein the one or more measurements include core thermal measurements and core processing measurements;
- generating, at least partially subject to the one or more measurements, one or more predictions of one or more thermal effects of processing the one or more second instances of the one or more processing tasks on the two or more cores;
- generating, subject to the one or more measurements and the one or more predictions of the one or more thermal effects, a thermal profile of the one or more first instances of the one or more processing tasks, thereby generating one or more task thermal profiles;
- and
- distributing, dynamically, subject to the one or more task thermal profiles, processing of the one or more second instances of the one or more processing tasks to the two or more cores.
The method of 14, further comprising:
- defining a bounded performance impact for applications including the one or more processing tasks running in a thermally constrained environment, comprising estimating a thermal margin for a current workload mix at runtime.
Dependencies are inferred from the claim text.