Patent ID: 7467278

Claim:
A method for memory tuning for garbage collection and central processing unit (CPU) utilization optimization, the method comprising: benchmarking an application across multiple different heap sizes to accumulate garbage collection metrics; utilizing the garbage collection metrics accumulated during benchmarking to compute both CPU utilization and garbage collection time for each of a selection of candidate heap sizes; matching one of the candidate heap sizes to a desired CPU utilization and garbage collection time; and, applying the matched one of the candidate heap sizes to a host environment, wherein the benchmarking an application across multiple different heap sizes comprises benchmarking an application across multiple different heap sizes to determine a rate of garbage collections, an amount of memory collected for each garbage collection activity, and an average duration of each garbage collection, the utilizing the garbage collection metrics accumulated during benchmarking to compute both CPU utilization and garbage collection time for each of a selection of candidate heap sizes comprises: computing CPU utilization for a candidate heap size as the number of CPU seconds used for a garbage collection divided by a number of threads involved in the garbage collection; and, further computing a total garbage collection time for the candidate heap size as a base garbage collection time divided by a number of threads involved in the garbage collection combined with an average sweep time for the garbage collection, the computing of the total garbage collection time for the candidate heap size, comprises computing a base garbage collection time as a minimal amount of time required to mark and sweep threads during mark and sweep style garbage collection for the garbage collection.