ACM Home Page
Please provide us with feedback. Feedback
Clustering the heap in multi-threaded applications for improved garbage collection
Full text PdfPdf (339 KB)
Source Genetic And Evolutionary Computation Conference archive
Proceedings of the 8th annual conference on Genetic and evolutionary computation table of contents
Seattle, Washington, USA
SESSION: Search-based software engineering: papers table of contents
Pages: 1901 - 1908  
Year of Publication: 2006
ISBN:1-59593-186-4
Authors
Myra Cohen  University of Nebraska-Lincoln, Lincoln, NE
Shiu Beng Kooi  University of Nebraska-Lincoln, Lincoln, NE
Witawas Srisa-an  University of Nebraska-Lincoln, Lincoln, NE
Sponsors
SIGEVO: ACM Special Interest Group on Genetic and Evolutionary Computation
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 10,   Downloads (12 Months): 55,   Citation Count: 5
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1143997.1144314
What is a DOI?

ABSTRACT

Garbage collection can be a performance bottleneck in large distributed, multi-threaded applications. Applications may produce millions of objects during their lifetimes and may invoke hundreds or thousands of threads. When using a single shared heap, each time a garbage collection phase occurs all threads must be stopped, essentially halting all other processing. Attempts to fix this bottleneck include creating a single heap per thread, however this may not scale to large thread intensive applications. In this paper we explore the potential of clustering threads into related sub-heaps. We hypothesize that this will lead to a smaller shared heap, while maintaining good garbage collection parallelism. We leverage results from software module clustering to achieve this goal. Our results show that we can significantly reduce the number of sub-heaps created and reduce the number of objects in the shared heap in a representative application. This suggests that clustering may be a promising optimization technique for garbage collection in large multi-threaded systems with many shared objects.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
2
3
4
 
5
D. Browning. Integrate .NET remoting into the enterprise. In .NET Magazine, November 2002.
 
6
7
 
8
L. Dykstra, W. Srisa-an, and J. M. Chang. An analysis of the garbage collection performance in Sun's HotSpot JVM. In Proceedings of the IEEE International Performance Computing and Communications Conference, pages 335--339, 2002.
 
9
10
11
 
12
13
 
14
 
15
 
16
 
17
 
18
19
 
20
K. Nilsen and W. Schmidt. A high-performance hardware-assisted real-time garbage collection system. Journal of Programming Languages, pages 1--40, 1994.
21
 
22
23
 
24
 
25
A. Tucker, S. Swift, and X. Liu. Variable grouping in multivariate time series via correlation. IEEE Transactions on Systems, Man and Cybernetics, Part B, 31(2):235--245, 2001.
26


Collaborative Colleagues:
Myra Cohen: colleagues
Shiu Beng Kooi: colleagues
Witawas Srisa-an: colleagues