Skip to main content

Java Programs Optimization Based on the Most–Often–Used–Paths Approach

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3911))

Abstract

The paper presents a Java byte–code optimization algorithm, which determines an initial distribution of objects among virtual machines (JVMs) so as to decrease direct inter–object communication and balance loads of the virtual machines. The proposed optimization algorithm is based on a graph representation of control and data dependencies between methods in Java programs. These dependencies, expressed in the form of conditional macro–dataflow graphs, are discovered by a static analysis of program byte–code.

Object placement optimization is performed before a Java program is executed in a parallel system. The optimization methods are based on the Dominant Sequence Clustering (DSC) approach. First, macro nodes are clustered on an unlimited number of processors (logical JVMs) to reduce the total program execution time. Next, clusters are merged and scheduled to adjust the number of logical JVMs to the number of real processors. The presented approach is supported by branch optimization techniques, which include detection of mutually–exclusive paths and scheduling of most–often–used–paths based on branch probabilities.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Zhao, J.: Dependency Analysis of the Java Byte code. In: Proc. of the 24th IEEE Annual Int. Computer Software and Application Conference, Taipei (October 2000)

    Google Scholar 

  2. Bouchi, A., Olejnik, R., Toursel, B.: A New Estimation Method for Distributed Java Object Activity. In: IPDPS – Workshop on Java for Parallel and Distributed Computing, Fort Lauderdale, USA (2002)

    Google Scholar 

  3. Philippsen, M., Zenger, M.: JavaParty – Transparent Remote Objects in Java. Concurrency: Practice & Experience 9(11), 1225–1242 (1997)

    Article  Google Scholar 

  4. Weyns, D., Truyen, E., Verbaeten, P.: Distributed Threads in Java. In: Proceedings of the NATO Adanced Research Workshop on Advanced Environments, Tools and Applications for Cluster Computing, Mangalia, Romania (September 2001)

    Google Scholar 

  5. Agarawal, M., et al.: Speculative Trace Scheduling in VLIW Processors. In: IEEE Int. Conf. on Computer Design: VLSI in Computers and Processors, Germany (2002)

    Google Scholar 

  6. Xie, Y., Wolf, W.: Allocation and scheduling of conditional task graph in hardware/software co–synthesis. In: DATE 2001, pp. 620–625 (2001)

    Google Scholar 

  7. Murphy, C., Wang, X.: Most Often Used Path Scheduling Algorithm. In: Proceedings of the 5th World Multi–Conference on Systemics, Cybernetics and Informatics (SCI 2001), Orlando, Florida, USA, July 22-25, 2001, vol. XII, pp. 289–295 (2001)

    Google Scholar 

  8. Hwang, J.-J., et al.: Scheduling Precedence Graphs in Systems with Interprocessor Communication Times. Siam J. Comput. 18(2) (1989)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Laskowski, E., Tudruj, M., Olejnik, R., Toursel, B. (2006). Java Programs Optimization Based on the Most–Often–Used–Paths Approach. In: Wyrzykowski, R., Dongarra, J., Meyer, N., Waśniewski, J. (eds) Parallel Processing and Applied Mathematics. PPAM 2005. Lecture Notes in Computer Science, vol 3911. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11752578_114

Download citation

  • DOI: https://doi.org/10.1007/11752578_114

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-34141-3

  • Online ISBN: 978-3-540-34142-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics