Extremal Optimization Approach Applied to Initial Mapping of Distributed Java Programs

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


An extremal optimization algorithm for initial Java program placement on clusters of Java Virtual Machines (JVMs) is presented. JVMs are implemented on multicore processors working under the ProActive Java execution framework. Java programs are represented as Directed Acyclic Graphs in which tasks correspond to methods of distributed active Java objects that communicate using a 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 program optimization evolutionary algorithms 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    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
  2. 2.
    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
  3. 3.
    Don, F.: A taxonomy of task scheduling algorithms in the Grid. Parallel Processing Letters 17(4), 439–454 (2007)MathSciNetCrossRefGoogle Scholar
  4. 4.
    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
  5. 5.
    Olejnik, R., et al.: Load balancing in the SOAJA Web Service Platform. In: 4th Workshop on Large Scale Computations on Grids (LaSCoG 2008), pp. 459–465. IEEE CS, Los Alamitos (October 2008)Google Scholar
  6. 6.
    Fiolet, V., et al.: Optimizing distributed data mining applications based on object clustering methods. In: Parallel Computing in Electrical Engineering 2006 (PARELEC 2006), pp. 257–262. IEEE CS, Los Alamitos (2006)Google Scholar
  7. 7.
    Laskowski, E., et al.: 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
  8. 8.
    Laskowski, E., et al.: Byte-code scheduling of Java programs with branches for Desktop Grid. Future Generation Computer Systems 23(8), 977–982 (2007)CrossRefGoogle Scholar
  9. 9.
    Sneppen, K., et al.: Evolution as a self–organized critical phenomenon. Proc. Natl. Acad. Sci. 92, 5209–5213 (1995)CrossRefGoogle Scholar
  10. 10.
    Boettcher, S., Percus, A.G.: Extremal optimization: an evolutionary local–search algorithm. In: Bhargava, H.M., Kluver, N.Y. (eds.) Computational Modeling and Problem Solving in the NetworkedWorld, Boston (2003)Google Scholar
  11. 11.
    Baude, F., et al.: Programming, Composing, Deploying for the Grid. In: Cunha, J.C., Rana, O.F. (eds.) GRID COMPUTING: Software Environments and Tools. Springer, Heidelberg (January 2006)Google Scholar
  12. 12.
    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
  13. 13.
    Fitzgerald, S., et al.: A directory service for configuring high–performance distributed computations. In: Sixth Symp. on High Performance Distributed Computing, Portland, OR, USA, pp. 365–375. IEEE Computer Society, Los Alamitos (1997)Google Scholar
  14. 14.
    Czajkowski, K., et al.: Grid information services for distributed resource sharing. In: Tenth Symp. on High Performance Distributed Computing, pp. 181–194. IEEE Computer Society, San Francisco (2001)Google Scholar
  15. 15.
    Wolski, R., et al.: The network weather service: a distributed resource performance forecasting service for metacomputing. Future Generation Computer Systems 15(5-6), 757–768 (1999)CrossRefGoogle Scholar
  16. 16.
    Gong, L., et al.: Performance modeling and prediction of non–dedicated network computing. IEEE Trans. on Computers 51(9), 1041–1055 (2002)MathSciNetCrossRefGoogle Scholar
  17. 17.
    Hwang, J.-J., et al.: Scheduling Precedence Graphs in Systems with Interprocessor Communication Times. SIAM. J. Comput. 18(2), 244–257 (1989)MathSciNetCrossRefMATHGoogle Scholar
  18. 18.
    Karypis, G., Kumar, V.: Multilevel k-way Partitioning Scheme for Irregular Graphs. J. Parallel Distrib. Comput. 48(1), 96–129 (1998)CrossRefMATHGoogle Scholar
  19. 19.
    Kak, A.C., Slaney, M.: Principles of Computerized Tomographic Imaging. IEEE Press, New York (1988)MATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

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

Personalised recommendations