Data center infrastructures are highly underutilized on
average. Typically, a data center manager computes the
number of servers his facility can host by dividing the total
power capacity of each rack by an assigned “peak power
rating” for each server. However, this scheme suffers from
the weakness of all static provisioning schemes – it does not
account for the variability of load on the servers. We propose
an algorithm that studies the power consumption behavior
of the servers over time and suggests optimal ways
to combine them in racks to maximize rack power utilization.
Our algorithm – RackPacker – smooths aggregate rack
power utilization by grouping together servers that are unlikely
to peak together. Our evaluation of RackPacker on
data from an MSN Messenger deployment shows substantially
superior results than static packing.