1. A system for synchronizing transient resource usage between virtual servers, comprising: one or more computers provided within a cloud, wherein each of the one or more computers includes a processor; a plurality of virtual servers, wherein each of the plurality of virtual servers includes a synchronization module which predicts times of garbage collects, code optimizations, or other processes at its associated virtual server, wherein a particular synchronization module is selected to operate as a master synchronization module which requests predictions from other synchronization modules, and uses the predictions to update a schedule of the garbage collects, code optimizations, or other processes, and a communication channel, that facilitates communication between the plurality of virtual servers; wherein the virtual servers use their associated synchronization modules and the communication channel to synchronize transient resource usage between the plurality of virtual servers, including advancing or postponing execution of the garbage collects, code optimizations, or other processes running thereon.