Updating kernel affinity for applications executing in a multiprocessor system
AssigneeSprint Communications Company L.P.
InventorsDavid Wayne Haney, Christopher Joseph Mateski, Andrew Lee Davey
Life of this patent
Estimating the term…
Abstract
A multiprocessor system dynamically updates CPU affinities for processes executing on processors of the multiprocessor system based on an external signal. The external signal is generated by a monitor device. The external signal identifies the processors and the processes that require updating. In response to the external signal, the multiprocessor system redistributes the processes identified in the external signal and powers on or off one or more processors based on a processor threshold associated with the multiprocessor system.
Claims20
One or more non-transitory computer-storage media having computer-executable instructions embodied thereon, that when executed by a computing device, perform a method of dynamically provisioning processors in a multiprocessor system, the method comprising:
- receiving an external signal specifying a change in central processing unit (CPU) affinity for one or more processes executing on a plurality of processors in the multiprocessor systems, the CPU affinity represents the tendency of one or more processes to execute on one of the plurality of processors in the multiprocessor system, wherein the external signal is received from one or more of a licensing server, a heating ventilation and air conditioning (HVAC) management server, or a testing client;
- redistributing the one or more processes to one or more offline processors in the multiprocessor system when the CPU affinity is above a certain threshold level;
- and
- removing power from one or more inactive processors of the multiprocessor system when the CPU affinity is below the certain threshold level wherein removing power from one or more inactive processors of the multiprocessor system when the CPU affinity is below the certain threshold level, comprises:
- redistributing the one or more processes to a main processor of the multiprocessor system.
A multiprocessor communications system, comprising:
- one or more servers, where each of the one or more servers comprise a plurality of processors and a central processing unit (CPU) affinity component that tracks the tendency of one or more processes to execute on one of processor of the plurality of processors;
- one or more notification devices for generating notifications in response to environmental and computing conditions, wherein the one or more notification devices generate notifications to an external monitor in response to one or more requirements of the multiprocessor system to conserve power, comply with licensing arrangements, or reduce heat emission generated by the multiprocessor system;
- and
- the external monitor to generate external signals to change a CPU affinity for each process executing on one or more of the plurality of processors via the CPU affinity component in response to the notifications.
One or more non-transitory computer-storage media having computer-executable instructions embodied thereon, that when executed by a computing device, perform a method of responding to external signals for one or more processes executing in a multiprocessor system, the method comprising:
- managing a plurality of computer processing unit (CPU) affinity updates for a respective plurality of processors of a multiprocessor system, the CPU affinity tracks the tendency of one or more processes to execute on one processor of the plurality of processors;
- processing an external signal received from an external monitor that specifies a change in CPU affinity for one or more processes executing on the plurality of processors;
- redistributing the one or more processes to processors identified in the external signal, wherein redistributing the one or more processes to processors identified in the external signal, comprises:
- removing power from one or more of the plurality of processors that are not executing at least one process;
- and
- updating the CPU affinity for each of the one or more processes according to the redistributing.
Dependencies are inferred from the claim text.