PROFILING COMPUTER ENERGY CONSUMPTION ON
ORGANIZATIONS
Rui Pedro Lopes, Luis Pires, Tiago Pedrosa and Vasile Marian
Politechnic Institute of Braganca, Braganca, Portugal
Keywords:
Energy saving, Power management, Policy-based consumption optimization.
Abstract:
Modern organizations depend on computers to work. Text processing, CAD, CAM, simulation, statistical
analysis and so on are fundamental for maintaining high degree of productivity and competitiveness. Com-
puters in an organization, consume a considerable percentage of the overall energy and, although a typical
computer provides power saving technologies, such as suspending or hibernating components, this feature can
be disabled. Moreover, the user can opt for never turning off the workstation. Well defined power saving
policies, with appropriate automatic mechanisms to apply them, can provide significant power savings with
consequent reduction of the power expense.
With several computers in an organization, it is necessary to build the profile of the energy consumption. We
propose installing a software probe in each computer to instrument the power comsumption, either diretly,
by using a power meter, or indirectly, by measuring the processor performance counters. This distributed
architecture, with software probes in every computer and a centralized server for persistence and decision
making tries to save energy, by defining and applying organization level power saving policies.
1 INTRODUCTION
Many organizations depend heavily on computers
and other information technology equipment to work.
These resources consume a significant amount of en-
ergy, contributing to the overall power expense.
Typically, computer equipment act in two roles:
as a server, providing remote access to network ap-
plications, such as network file systems, web servers,
e-mail and other, or as a desktop workstation, where
the user runs graphical applications and tools. The en-
ergy consumption is different in both situations, and
depend on the energy necessary to power the device,
and the use pattern.
The first is conditioned by the technology used
in the computer components, such as the CPU, net-
work interface card, hard disk as well as the moni-
tor. Moreover, Power Management techniques, such
as ACPI (Hewlett-Packard et al., 2006), allow a con-
siderable reduction of power consumption. The use
pattern is related to how the user interacts with the
computer, it’s operating system and applications.
There is a high degree of uncertainty in predicting
the energy consumption for both approaches. Power
Management is not always used, either because the
equipment does not support it or because it is disabled
in the operating system, the user behaviour in relation
to turn-off rates is erratic, and the type and quantity
of equipment in use at the office varies randomly.
Because of this uncertainty, the optimization of
computer energy consumption has to act on two axis:
a) enforcing power saving policies and b) appealing
to user behaviour.
2 COMPUTER ENERGY
CONSUMPTION
The energy used by a computer depends on two dif-
ferent aspects: the energy required to run the device
(power draw) and how the computer is used (use pat-
tern) (Webber et al., 2005).
2.1 Power Draw
The power used by a computer is in direct propor-
tion to the energy required by it’s components. The
memory system, composed of the main memory and
system caches consumes a significant percentage of
energy, tending to increase with the cache size and
main memory. Several authors address this issue by,
171
Pedro Lopes R., Pires L., Pedrosa T. and Marian V. (2009).
PROFILING COMPUTER ENERGY CONSUMPTION ON ORGANIZATIONS.
In Proceedings of the 11th International Conference on Enterprise Information Systems - Software Agents and Internet Computing, pages 171-174
DOI: 10.5220/0002004801710174
Copyright
c
SciTePress
for example, optimizing the address translation and
compiler techniques for energy saving (Ashok et al.,
2004). Other proposals seek to optimize the power
state of memory as a function of the memory load (Di-
niz et al., 2007) or by transiting devices to low power
after unused for some time (Li et al., 2004).
Similar to the previous case, hard disk drives can
also be forced into a low power state if unused for
some time (Li et al., 2004). Some approaches adapt
the compiler to extend, as much as possible, the time
between disk accesses to allow switching the disk into
a hibernate state, thus saving energy (Hom and Kre-
mer, 2005). The insight into how disk drives use the
energy can also provide valuable information related
to power consumption (Zedlewski et al., 2003).
There is a large variety of computer processors on
the market nowadays and the fact is that every series
that is being produced has a specific hardware design
and implementation that affects the energy consump-
tion. Designing processors that can perform tasks ef-
ficiently without overheating is a major design factor
for many CPU manufacturers. In a desktop computer,
the CPU is one of the prominent energy consumer
component and successfully reducing it can represent
a considerable slice of the overall machine consump-
tion.
The measurement of the consumed energy can be
performed in real-time, either directly (by using a
power meter) or indirectly, by using the CPU’s per-
formance counters (Isci and Martonosi, 2003). With
proper clock speed control associated to an adequate
scheduling of processes, it is possible to reduce the
CPU power consumption (Weiser et al., 1996). Re-
ducing the clock speed allows lowering the supply
voltage, which can significantly reduce power dissi-
pation (Hsu and Kremer, 2003).
2.2 Use Pattern
The randomness of the user behaviour in relation to
turn-off rates leads us to consider an automatic proce-
dure to turn off the computer based on specific poli-
cies. (Webber et al., 2005) shows that users turn-off
rates range from 0% to 91%, for example. On a dif-
ferent study, using stickers to remind the user to turn
off the computer when not in use had some effect.
However, after some weeks, the percentage dimin-
ished (Newsham and Tiller, 1994). Only automatic
approaches were able to maintain the percentage re-
duction.
3 POLICIES
The main idea of Policy-based Consumption Opti-
mization is the definition of high level procedures
policies that will rule the behaviour of the power
management mechanisms. The meaning of policy in
this context is very simple: it is one or more rules that
describe the action(s) to be taken when specific con-
dition(s) exist. It can be expressed semantically as:
if(condition)then(action)[on(target)] (1)
The condition can include, but not limitted
to, time constraints, calendar constraints, key-
board/mouse activity, processor activity, running pro-
cesses footprint, performance registers content.
actions include actions related to changing the
state of the computer in terms of energy consumption:
turn-off, turn-on (Wake on LAN), suspend, hibernate.
Policies can be structured in global-level and user-
level. The former are of the responsibility of the man-
ager and the latter of the responsibility of each user.
The user must be able to specify that a computer will
never be switched off, regardless of keyboard/mouse
activity, and that the computer will never be switched
off if an application program is running (Bray, 2006).
In other words, users must have the freedom to choose
switch off criteria that is best suited to their own work
patterns (Newsham and Tiller, 1994).
3.1 Power Probes
The accuracy, or the overall quality, of a policy, de-
pends on the use patterns of the organization’s com-
puters. A deep knowledge on how the computer is
used, when it is being used, by which user, which
processes are running, and others, provide valuable
insight into how energy can be saved. To retrieve this
information is necessary a probe (from now on, we
will use the term agent to reference the probe) in each
computer. The agent’s responsibility is to read in-
strumentation parameters related to processes, perfor-
mance registers, keyboard and mouse activity, and to
send it to a central database. Aditionally, the agent is
also responsible for applying policies, thus suspend-
ing, hibernating or shutting-down the computer.
4 ARCHITECTURE
Profiling computer energy use in an organization as-
sumes a distributed power management mechanism,
able of gathering the use pattern of several comput-
ers spread over the organization and of applying poli-
cies for energy saving. Each computer has a soft-
ware agent, to perform instrumentation on the CPU’s
ICEIS 2009 - International Conference on Enterprise Information Systems
172
performance counters, keyboard and mouse activity,
building the running processes and applications map
and enforcing actions. Moreover, the agent can access
mean and instant values for voltage, current, power
and energy, provided by a hardware device, accessi-
ble through USB. The instrumentation data is sent to
a centralized server, for persistence and data mining.
The hardware device is custom made and is in-
stalled in serial with the power supply. It has several
internal registers, which can be read through USB.
These values are used to correlate with the instrumen-
tation values of the performance counters. This will
allow to get the consumption scenario in several com-
puters using a single power meter.
The communication between the agents and the
central server is performed through Web Services,
providing multi-platform and multi-language services
for persistence, queries and management.The server
also provides a Web based interface, to allow the def-
inition, modification and removal of power saving
policies.
4.1 Power Probe – Agent
From a power consumption point of view, computers
are intrinsically heterogeneous. Differences in CPU
technology, manufacturer, graphics, number of hard
disk drives and so on make the process of profiling
power consumption a difficult task. Moreover, with-
out solid information about all the computers in the
organization it is not possible to act, in terms of en-
forcing power saving policies.
Agents provide a common interface to obtain in-
strumentation values of the computer as well as pro-
viding a means to act on it. In other words, each
agent periodically sends information related to the
computer power consumption and enforces policies
received from the central server.
Each agent has a set of sensors, modules respon-
sible for getting and processing samples. For the pur-
pose of the work presented in this paper, sensors mon-
itor running processes, perform periodic samples on
CPU performance counters, receive indication of key-
board and mouse activity, perform samples on the ex-
ternal power meter. Sensors also havea policy engine,
responsible for running and enforcing policies.
The communication between agents and the pol-
icy server is performed through Web Services. This
provides a interoperable communication mechanism,
independent of the operating system, network tech-
nology and languages used.
4.2 Policy Server
The policy server is a central repository for power
saving policies and power consumption history. It
also provides a Web based user interface, to allow
defining, updating and removing policies. It is de-
veloped in a multitier approach, isolating the persis-
tence layer from the presentation layer with a business
layer.
The business layer exports Web Services based
interfaces, to allow remote operation on the server.
Each module is encapsulated in an Enterprise Java
Bean (EJB), preventing a direct access to the data in
the database. In the work presented in this paper, the
following modules are available: user and resources
managament, policy definition, samples repository.
The user and resources management is related to
the authentication and authorization of users in the or-
ganization. Each user is associated with an access list,
which describe the resources he is allowed to control
through the definition of policies. If a user tries to de-
fine a policy for a computer he has no authorization,
the operation fails and the attempt is logged, for later
inspection.
The policy definition module allows the user to
write policies to the resources which he has access to.
The policy, after validated, is stored in the database,
through the persistence layer. Then the user has the
possibility of activating it, which translates to sending
the policy to the target agents. Deactivating the policy
implies the removalof the agent in which it is running.
Finally, the samples module is responsible for re-
ceiving and storing the samples from the agents in-
stalled in the organization’s computers. It also pro-
vides some statistics to the authorized users, to allow
optimizing policies according to the power saving po-
tential.
4.3 User Behaviour
The most important factor for saving energy is user
behaviour, such as turning off devices at night or
enabling power management (Newsham and Tiller,
1994; Webber et al., 2005). By providing adequate
information as well as adequate tools, which can au-
tomate many of the user actions, it is possible to influ-
ence energy consumption reduction to a greate extent.
Each agent has the possibility to popup a message,
providing non-intrusive information about the power
saving history in his computer. The most simple mes-
sage is “You do not havepower managementactivated
in this computer. Do you want to turn it on? It would
not have any impact on your work.”. A more elab-
orate example: “Your computer will disconnect one
PROFILING COMPUTER ENERGY CONSUMPTION ON ORGANIZATIONS
173
hour after 8 p.m. However, the computer is usually
idle after 5 p.m. Changing the policy would save 3
hours of energy consumption”.
We believe that a discrete number of messages for
month would appeal effectivelly to the user behaviour,
thus contributing to reducing the overall expense.
5 CONCLUSIONS
Office equipment, in particular computers, demand a
significant amount of power, contributing to the over-
all energy consumption. Profiling the power con-
sumption of an organization require a distributed ar-
chitecture, based on remote agents and a centralized
server. The agents are responsible for instrumenta-
tion of computers, and the central server is responsi-
ble for storing and processing the information sent by
the agents. Based on the energy profile, it is possible
to define power saving policies, rules of behaviour for
power management mechanisms, to be enforced by
each agent.
The information from all the agents provide a
valuable insight into how computers all over the or-
ganization use energy, as well as an opportunity to
optimize power consumption based on the typical de-
mand.
In this paper, we present and architecture for pro-
filing and enforcing policies. It is based on a multitier
application server with a Web frontend, and a web
services middleware, to cope with the diversity and
heterogeneity of enterprises’ networks and systems.
REFERENCES
Ashok, R., Chheda, S., and Moritz, C. A. (2004). Cou-
pling compiler-enabled and conventional memory ac-
cessing for energy efficiency. ACM Trans. Comput.
Syst., 22:180–213.
Bray, M. (2006). Review of computer energy consumption
and potential savings.
Diniz, B., Guedes, D., Meira, J. W., and Bianchini, R.
(2007). Limiting the power consumption of main
memory. In Proceedings of the 34th annual inter-
national symposium on Computer architecture, pages
290–301, San Diego, California, USA. ACM.
Hewlett-Packard, Microsoft, Intel, Technologies, P., and
Toshiba (2006). Advanced configuration and power
interface specification.
Hom, J. and Kremer, U. (2005). Inter-program optimiza-
tions for conserving disk energy. In Proceedings of
the 2005 international symposium on Low power elec-
tronics and design, pages 335–338, San Diego, CA,
USA. ACM.
Hsu, C. H. and Kremer, U. (2003). The design, implemen-
tation, and evaluation of a compiler algorithm for cpu
energy reduction. ACM SIGPLAN Notices, 38:38–48.
Isci, C. and Martonosi, M. (2003). Runtime power moni-
toring in high-end processors: Methodology and em-
pirical data. In Proceedings of the 36th annual
IEEE/ACM International Symposium on Microarchi-
tecture. IEEE Computer Society Washington, DC,
USA.
Li, X., Li, Z., David, F., Zhou, P., Zhou, Y., Adve, S., and
Kumar, S. (2004). Performance directed energy man-
agement for main memory and disks. In Proceed-
ings of the 11th international conference on Archi-
tectural support for programming languages and op-
erating systems, pages 271–283, Boston, MA, USA.
ACM.
Newsham, G. and Tiller, D. (1994). The energy consump-
tion of desktop computers: measurement and savings
potential. Industry Applications, IEEE Transactions
on, 30:1065–1072.
Webber, C. A., Roberson, J. A., McWhinney, M. C., Brown,
R. E., Pinckard, M. J., and Busch, J. F. (2005). After-
hours power status of office equipment in the usa.
Journal: Energy (the International Journal); Journal
Volume: 31; Journal Issue: 14; Related Information:
Journal Publication Date: 11/2006.
Weiser, M., Welch, B., Demers, A., and Shenker, S. (1996).
Scheduling for reduced cpu energy. Kluwer Interna-
tional Series in Engineering and Computer Science,
pages 449–472.
Zedlewski, J., Sobti, S., Garg, N., Zheng, F., Krishna-
murthy, A., and Wang, R. (2003). Modeling hard-disk
power consumption. FAST2003 - 2nd USENIX Con-
ference on File and Storage Technologies.
ICEIS 2009 - International Conference on Enterprise Information Systems
174