摘要:
A generational garbage collection tool and method for a computer system that pre-allocates computer resources during compile-time for later use by a generational garbage collector at run-time. The invention reduces the overall cost of dealing with long-lived objects and thereby allows a generational garbage collector to focus deallocation efforts on young objects, which are more likely to be dead. The present embodiment reduces pause time to a level that does not disturb interactive users. The embodiment allocates space for interior pointers at compile-time when the location of interior pointers is known and thereby facilitates generational garbage collection. By enabling the use of threaded interior pointers during generational garbage collection, live object relocation is improved by requiring an update to one pointer instead of updating each pointer that references an object. The present embodiment identifies the pointers that may be updated due to generational garbage collection, and by selectively allocating space to only those pointers that may be accessed during generational garbage collection and not all pointers, computer resources are saved. Further, the present embodiment may include locking information in the pointer to determine whether the object is presently being updated and is therefore locked.
摘要:
The subject matter of this specification can be embodied in, among other things, a method that includes supplying power to a portion of a data center through a power distribution line. Utilization of a statistically significant sample of the computers is monitored, and an estimated individual power draw for each of the computers based on the utilization is calculated. An estimated total power draw is calculated for different times from the estimated individual power draws to generate a collection of estimated total power draw values for the different times. Actual power draw is monitored at the power distribution line and a collection of actual power draw values is generated. A function is fitted to pairs of actual power draw values and estimated power draw values, each pair comprising an actual draw value and an estimated draw value for the same time, and the function is then stored.