ACM Home Page
Please provide us with feedback. Feedback
Design, implementation, and evaluation of a compilation server
Full text PdfPdf (323 KB)
Source
ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 29 ,  Issue 4  (August 2007) table of contents
Article No. 18  
Year of Publication: 2007
ISSN:0164-0925
Authors
Han B. Lee  University of Colorado
Amer Diwan  University of Colorado
J. Eliot B. Moss  University of Massachusetts
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 9,   Downloads (12 Months): 81,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

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

ABSTRACT

Modern JVM implementations interleave execution with compilation of “hot” methods to achieve reasonable performance. Since compilation overhead impacts the execution time of the application and induces run-time pauses, we explore offloading compilation onto a compilation server. In this article, we present the design, implementation, and evaluation of a compilation server that compiles and optimizes Java bytecodes on behalf of its clients.

We show that the compilation server provides the following benefits for our benchmark programs: (i) lower execution time by reducing the compilation overhead and by enabling more aggressive optimizations; (ii) lower memory allocation by eliminating allocations due to optimizing compilation and the footprint of the optimizing compiler; (iii) lower execution time of the application due to sharing of profile information across different runs of the same application and runs of different applications.

We implemented the compilation server in Jikes RVM, and our results indicate that it can reduce running time by an average of 20.5%, interruptions due to compilation by an average of 81.0%, and dynamic memory allocation by 8.6% for our benchmark programs. Simulation results indicate that our current implementation of the compilation server can handle more than 50 concurrent clients while still allowing them to outperform the best performing adaptive configuration.


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
6
7
8
9
 
10
 
11
 
12
Ellis, S. 2003. The ‘nc’ network compilation tool. Available at http://www.brouhaha.com/ellis/software/index.html.
 
13
 
14
 
15
16
17
18
 
19
Kistler, T. and Franz, M. 1998. Computing the similarity of profiling data: Heuristics for guiding adaptive compilation. In Workshop on Profile and Feedback-Directed Compilation. Springer Verlag, Paris, France.
 
20
Kremer, U., Hicks, J., and Rehg, J. M. 2000. Compiler-directed remote task execution for power management. In Workshop on Compilers and Operating Systems for Low Power (COLP 2000). Philadelphia, PA.
 
21
Kremer, U., Hicks, J., and Rehg, J. M. 2001. A compilation framework for power and energy management on mobile computers. Tech. Rep. DCS-TR-446, Rutgers University.
 
22
 
23
Kuznetsov, A. 1998. IPROUTE2 utility suite howto. Available at http://www.linuxgrill.com/iproute2-toc.html.
 
24
 
25
26
 
27
28
29
 
30
Pool, M. 2003. distcc, a fast free distributed compiler. Available at http://distcc.samba.org/doc/lca2004/distcc-lca-2004.html. White Paper.
 
31
Radhakrishnan, R., Vijaykrishnan, N., John, L. K., and Sivasubramaniam, A. 2000. Architectural issues in Java runtime systems. In Proceedings of the 6th International Symposium on High Performance Computer Architecture (HPCA-6). IEEE, Toulouse, France, 387--398.
 
32
Savari, S. and Young, C. 2000. Comparing and combining profiles. Journal of Instruction-Level Parallelism 2.
33
 
34
Standard Performance Evaluation Corporation (SPEC). 1998. SPECjvm98 benchmarks. http://www.specbench.org/osg/jvm98.
 
35
Standard Performance Evaluation Corporation (SPEC). 2000. SPECjbb2000 benchmark. http://www.specbench.org/jbb2000/.
36
 
37
38

Collaborative Colleagues:
Han B. Lee: colleagues
Amer Diwan: colleagues
J. Eliot B. Moss: colleagues