1. A system for collocating workloads in a datacenter, the system comprising: a number of servers communicatively coupled to each other; a collocation module to receive information from each server and decide whether to migrate a workload running on one of the number of servers to another server; a daemon to find and periodically create a report about each servers' resource utilization on that server; a power measurement module to compile data defining the power consumption of the server; and wherein the collocation module compares a utility metric of a critical workload with a service level agreement (SLA) and when: the utility metric is not in violation of the defined SLA, an SLA violation counter is decremented for the critical workload; the utility metric is in violation of the defined SLA, the SLA violation counter is incremented for the critical workload.