CFP last date
20 May 2024
Reseach Article

Designing Compilation Server

by Mrudula S. Nimbarte, A. P. Bodkhe
International Journal of Computer Applications
Foundation of Computer Science (FCS), NY, USA
Volume 1 - Number 16
Year of Publication: 2010
Authors: Mrudula S. Nimbarte, A. P. Bodkhe
10.5120/337-508

Mrudula S. Nimbarte, A. P. Bodkhe . Designing Compilation Server. International Journal of Computer Applications. 1, 16 ( February 2010), 80-83. DOI=10.5120/337-508

@article{ 10.5120/337-508,
author = { Mrudula S. Nimbarte, A. P. Bodkhe },
title = { Designing Compilation Server },
journal = { International Journal of Computer Applications },
issue_date = { February 2010 },
volume = { 1 },
number = { 16 },
month = { February },
year = { 2010 },
issn = { 0975-8887 },
pages = { 80-83 },
numpages = {9},
url = { https://ijcaonline.org/archives/volume1/number16/337-508/ },
doi = { 10.5120/337-508 },
publisher = {Foundation of Computer Science (FCS), NY, USA},
address = {New York, USA}
}
%0 Journal Article
%1 2024-02-06T19:42:47.035408+05:30
%A Mrudula S. Nimbarte
%A A. P. Bodkhe
%T Designing Compilation Server
%J International Journal of Computer Applications
%@ 0975-8887
%V 1
%N 16
%P 80-83
%D 2010
%I Foundation of Computer Science (FCS), NY, USA
Abstract

In language systems that support separate compilation, the header files are internalized over and over again when the source files that depend on them are compiled. Making a compiler a long-lived server eliminates such redundant processing of header files, thus reducing the compilation time. 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, it is better to offload compilation onto a compilation server. Compilation server is the server which compiles and optimizes Java byte codes on behalf of its clients. It provides the benefit of lower execution and pause times due to reducing the overhead of optimization. Compilation server is able to handle more than 50 concurrent clients while still allowing them to outperform best performing adaptive configuration.

References
  1. M. Arnold, S. Fink, D. Grove, M. Hind, and P. Sweeney, 2000. Adaptive optimization in the Jalape˜no JVM. In Proceedings of the Conference on Object-Oriented Programming, Systems, Languages, and Applications.ACM Press, Minneapolis, MN, 47-65.
  2. M. Burke, J. D. Choi, S. Fink, D. Grove, M. Hind, V. Sarkar, M. Serrano, V. C. Sreedhar, and H. Srinivasan, 1999. The Jalape˜no dynamic optimizing compiler for Java. In ACM Java Grande Conference. ACM Press, San Francisco, CA, 129-141.
  3. P. Cheng, and G. E. Blelloch, 2001. A parallel, real-time garbage collector. In Proceedings of the ACM SIGPLAN 2001 Conference on Programming Language Design and Implementation. ACM Press, Snowbird, UT, 125-136.
  4. R. Cytron, J. Ferrante, B. K. Rosen, M. N. Wegman, and F. K. Adeck, 1991. Efficiently computing static single assignment form and the control dependence graph. ACM Transactions on Programming Languages and Systems (TOPLAS) 13, 4, 451-490.
  5. B. Delsart, V. Joloboff, And E. Paire, 2002. JCOD: A lightweight modular compilation technology for embedded Java. In Proceedings of the Second International Conference on Embedded Software. Springer-Verlag, Grenoble, France, 197-212.
  6. D. Detlefs, and O. Agesen, 1999. Inlining of virtual methods. In Proceedings of the 13th European Conference on Object-Oriented Programming. Springer-Verlag, Lisbon, Portugal, 258-278.
  7. J. Flinn, D. Narayanan, And M. Satyanarayanan, 2001. Self-tuned remote execution for pervasive computing. In 8th Workshop on Hot Topics in Operating Systems (HotOS-VIII. IEEE Computer Society Press, Schloss Elmau, Oberbayern, Germany.
  8. D. G. Foster, 'Separate compilation in a Modula-2 compiler', Software-Practice and Experience 16,101-106 (1986).
  9. J. Gosling, B. Joy, G. Steele, and G. Bracha, 2000. Java Language Specification, Second Edition: The Java Series. Addison-Wesley Longman Publishing Co., Inc., Boston, MA.
  10. J. Gutknecht, 'Separate compilation in Modula-2: an approach to efficient symbol files', IEEE Software,3, (11), 29-38 (1986).
  11. U. H¨olzle, and D. Ungar, 1994. A third-generation SELF implementation: reconciling responsiveness with performance. In Proceedings of the Ninth Annual Conference on Object-oriented Programming Systems, Language, and Applications. ACM Press, Portland, OR, 229-243.
  12. H. B. Lee, D. Von Dincklage, A. Diwan, and J. E. B. Moss, 2007. Design, implementation, and evaluation of a compilation server. ACM Trans. Program. Lang. Syst. 29, 4, Article 18 ( August 2007 ).
  13. M. Newsome, And D. Watson, 2002. Proxy compilation of dynamically loaded Java classes with MoJo. In Proceedings of the Joint Conference on Languages, Compilers and Tools for Embedded Systems. ACM Press, Berlin, Germany, 204-212.
  14. T. Onodera, Reducing Compilation Time by a Compilation Server IBM Research, Tokyo Research Laboratory, 5-19 Sanbancho, Chiyoda-ku, Tokyo 102, Japan
  15. J. Palm, H. Lee, A. Diwan, And J. E. B. Moss, 2002. When to use a compilation service? In Proceedings of the Joint Conference on Languages, Compilers and Tools for Embedded Systems. ACM Press, Berlin, Germany, 194-203.
  16. M. Paleczny, C. Vick, and C. Click, 2001. The java hotspot(tm) server compiler. In Java Virtual Machine Research and Technology Symposium. The Usenix Association, Monterey, CA.
  17. R. Teodorescu, And R. Pandey, 2001. Using JIT compilation and configurable runtime systems for efficient deployment of Java programs on ubiquitous devices. In Ubiquitous Computing 2001, LNCS 2201. Springer Verlag, Atlanta, GA, 76-95.
Index Terms

Computer Science
Information Sciences

Keywords

Compilers Compilation Server JVM execution time pause time