Apparatus and method for efficient estimation of the energy dissipation of processor based systems
AssigneeThe Research Foundation of State University of New York
InventorKanad Ghose
Life of this patent
Estimating the term…
Abstract
A system and method of scheduling tasks, comprising receiving activity and performance data from registers or storage locations maintained by hardware and an operating system; storing calibration coefficients associated with the activity and performance data; computing an energy dissipation rate based on at least the activity and performance data; and scheduling tasks under the operating system based on the computed energy dissipation rate.
Claims52
A method of scheduling requests, comprising:
- receiving at least one of activity data and performance data from registers or storage locations;
- retrieving stored calibration coefficients associated with the at least one of activity data and performance data;
- computing an estimate of prospective energy dissipation within a given time interval of a system comprising at least one request processing server based on at least the received at least one of activity data and performance data, the retrieved stored calibration coefficients, a set of requests being processed, and at least one new request to execute a task in a queue of requests to be processed;
- and
- at least one of altering an activation status of at least one request processing server, and controlling a cooling system for at least one request processing server, based on the computed estimate of prospective energy dissipation.
A method, comprising, comprising:
- executing a plurality of tasks in a processing system, having a plurality of resources, each respective resource being associated with an energy consumption;
- monitoring at least one of activity and performance and storing corresponding data in a set of registers or storage locations maintained by the system during execution of the plurality of tasks;
- monitoring an actual energy consumption over a time interval of the system while performing each of the plurality of tasks;
- automatically predicting an energy consumption characteristic associated with each task attributable to each respective resource, based on the data retrieved from the set of registers or storage locations and the monitoring and calibration data;
- and
- scheduling a new task for execution by at least one resource of the processing system, in dependence on at least a state of the processing system and the predicting.
An apparatus, comprising:
- a first memory configured to store data relating to at least one of activity and performance of components of a computing system which is updated concurrently with the at least one of activity and performance;
- a second memory configured to store calibration coefficients associated with the data;
- a processor, configured to execute an algorithm based on at least the data stored in the first memory and coefficients stored in the second memory, a current request processing status and a queue of requests awaiting processing by the computing system, to compute an output corresponding to a prospective estimate of energy dissipation of the computing system in a given time interval;
- and
- an interface, configured to communicate the computed prospective estimate of energy dissipation in the given time interval for selective control of at least one of an activity scheduler which allocates new requests to perform tasks from the queue of requests awaiting processing and a controllable cooling system configured to cool at least one component of the computing system.
A method of scheduling requests in a system having a plurality of servers, comprising:
- computing an estimate of energy dissipation for each of the plurality of servers within a given time interval, based on at least:
- at least one of activity and performance parameters for the plurality of servers,
- a set of calibration coefficients for at least one of activity and performance parameters, and
- system state information, including requests currently being processed by the respective plurality of servers;
- and
- allocating a new request to execute a new request to execute a task from a queue of requests to a respective server of the plurality of servers and producing a control signal for a variable output cooling system configured to remove energy dissipated by the respective server, selectively in dependence on at least the computed estimate of energy dissipation and an estimate of a prospective energy dissipation for the allocated request.
A scheduler for a system having a plurality of servers, comprising:
- a processor configured to compute an estimate of energy dissipation for each of the plurality of servers within a given time interval, based on at least:
- at least one of activity and performance parameters for the plurality of servers,
- a set of calibration coefficients for at least one of activity and performance parameters, and
- system state information, including requests currently being processed by the respective plurality of servers;
- a request allocation output adapted to allocate a request to execute a task from a queue of requests to a respective server of the plurality of servers, selectively in dependence on at least the computed estimate of energy dissipation and an estimate of a prospective energy dissipation for the allocated request.
Dependencies are inferred from the claim text.