Distributed Java Programs Initial Mapping Based on Extremal Optimization

  • Eryk Laskowski
  • Marek Tudruj
  • Ivanoe De Falco
  • Umberto Scafuri
  • Ernesto Tarantino
  • Richard Olejnik
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7133)


An application of extremal optimization algorithm for mapping Java program components on clusters of Java Virtual Machines (JVMs) is presented. Java programs are represented as Directed Acyclic Graphs in which tasks correspond to methods of distributed active Java objects that communicate using the RMI mechanism. The presented probabilistic extremal optimization approach is based on the local fitness function composed of two sub-functions in which elimination of delays of task execution after reception of required data and the imbalance of tasks execution in processors are used as heuristics for improvements of extremal optimization solutions. The evolution of an extremal optimization solution is governed by task clustering supported by identification of the dominant path in the graph. The applied task mapping is based on dynamic measurements of current loads of JVMs and inter-JVM communication link bandwidth. The JVM loads are approximated by observation of the average idle time that threads report to the OS. The current link bandwidth is determined by observation of the performed average number of RMI calls per second.


distributed systems scheduling evolutionary algorithms 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Agullo, E., Demmel, J., Dongarra, J., Hadri, B., Kurzak, J., Langou, J., Ltaief, H., Luszczek, P., Tomov, S.: Numerical linear algebra on emerging architectures: The PLASMA and MAGMA projects. Journal of Physics: Conference Series 180 (2009)Google Scholar
  2. 2.
    Baude, et al.: Programming, Composing, Deploying for the Grid. In: Cunha, J.C., Rana, O.F. (eds.) GRID COMPUTING: Software Environments and Tools. Springer, Heidelberg (2006)Google Scholar
  3. 3.
    Boettcher, S., Percus, A.G.: Extremal optimization: methods derived from coevolution. In: Proceedings of the Genetic and Evolutionary Computation Conference (GECCO 1999), pp. 825–832. Morgan Kaufmann, San Francisco (1999)Google Scholar
  4. 4.
    Boettcher, S., Percus, A.G.: Extremal optimization: an evolutionary local–search algorithm. In: Bhargava, H.M., Ye, N. (eds.) Computational Modeling and Problem Solving in the Networked World. Kluver, Boston (2003)Google Scholar
  5. 5.
    Dong, F.: A taxonomy of task scheduling algorithms in the Grid. Parallel Processing Letters 17(4), 439–454 (2007)MathSciNetCrossRefGoogle Scholar
  6. 6.
    Fiolet, V., Laskowski, E., Olejnik, R., Masko, L., Toursel, B., Tudruj, M.: Optimizing Distributed Data Mining Applications Based on Object Clustering Methods. In: Parallel Computing in Electrical Engineering (PARELEC 2006), pp. 257–262. IEEE (2006)Google Scholar
  7. 7.
    Hwang, J.-J., Chow, Y.-C., Anger, F., Lee, C.-Y.: Scheduling Precedence Graphs in Systems with Interprocessor Communication Times. Siam J. Comput. 18(2), 244–257 (1989)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Jimenez, J.B., Hood, R.: An Active Objects Load Balancing Mechanism for Intranet. In: Workshop on Sistemas Distribuidos y Paralelismo, WSDP 2003, Chile (2003)Google Scholar
  9. 9.
    Kak, A.C., Slaney, M.: Principles of Computerized Tomographic Imaging. IEEE Press, New York (1988)zbMATHGoogle Scholar
  10. 10.
    Kwok, Y.-K., Ahmad, I.: Benchmarking and Comparison of the Task Graph Scheduling Algorithms. J. Parallel Distrib. Comput. 59(3), 381–422 (1999)CrossRefzbMATHGoogle Scholar
  11. 11.
    Laskowski, E., Tudruj, M., Olejnik, R., Toursel, B.: Java Programs Optimization Based on the Most–Often–Used–Paths Approach. In: Wyrzykowski, R., Dongarra, J., Meyer, N., Waśniewski, J. (eds.) PPAM 2005. LNCS, vol. 3911, pp. 944–951. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  12. 12.
    Laskowski, E., Tudruj, M., Olejnik, R., Toursel, B.: Byte-code scheduling of Java programs with branches for Desktop Grid. Future Generation Computer Systems 23(8), 977–982 (2007)CrossRefGoogle Scholar
  13. 13.
    Olejnik, R., Alshabani, I., Toursel, B., Laskowski, E., Tudruj, M.: Load balancing in the SOAJA Web Service Platform. In: 4th Workshop on Large Scale Computations on Grids (LaSCoG 2008), pp. 459–465. IEEE (October 2008)Google Scholar
  14. 14.
    Sneppen, K., Bak, P., Flyvbjerg, H., Jensen, M.H.: Evolution as a self–organized critical phenomenon. Proc. Natl. Acad. Sci. 92, 5209–5213 (1995)CrossRefGoogle Scholar
  15. 15.
    Topcuoglu, H., Hariri, S., Wu, M.-Y.: Performance-Effective and Low-Complexity Task Scheduling for Heterogeneous Computing. IEEE Trans. on Parallel and Distributed Systems 13, 260–274 (2002)CrossRefGoogle Scholar
  16. 16.
    Toursel, B., Olejnik, R., Bouchi, A.: An object observation for a Java adaptative distributed application platform. In: International Conference on Parallel Computing in Electrical Engineering (PARELEC 2002), pp. 171–176 (September 2002)Google Scholar
  17. 17.
    Yamaguchi, S., Maruyama, K.: Autonomous Load Balance System for Distributed Servers using Active Objects. In: 12th International Workshop on Database and Expert Systems Applications, Munich, Germany, pp. 167–171 (September 2001)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Eryk Laskowski
    • 1
  • Marek Tudruj
    • 1
    • 3
  • Ivanoe De Falco
    • 2
  • Umberto Scafuri
    • 2
  • Ernesto Tarantino
    • 2
  • Richard Olejnik
    • 4
  1. 1.Institute of Computer SciencePolish Academy of SciencesWarsawPoland
  2. 2.ICAR-CNRInstitute of High Performance Computing and NetworkingNaplesItaly
  3. 3.Polish-Japanese Institute of Information TechnologyWarsawPoland
  4. 4.Computer Science LaboratoryUniversity of Science and Technology of LilleFrance

Personalised recommendations