Skip to main content
Log in

A self-adaptive computing framework for parallel maximum likelihood evaluation

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Many scientific disciplines use maximum likelihood evaluation (MLE) as an analytical tool. As the data to be analyzed grows increasingly, MLE demands more parallelism to improve analysis efficiency. Unfortunately, it is difficult for scientists and engineers to develop their own distributed/parallelized MLE applications. In addition, self-adaptability is an important characteristic for computing-intensive application for improving efficiency. This paper presents a self-adaptive and parallelized MLE framework that consists of a master process and a set of worker processes on a distributed environment. The workers are responsible to compute tasks, while the master needs to merge the computing results, to initiate or to terminate another computing iteration, and to decide how to re-distribute the computing tasks to workers. The proposed approach uses neither any monitoring mechanism to collect system state nor load-balancing-decision mechanism to balancing the workload. Instead, it measures the performance of each worker for computing an iteration, and uses the information to adjust the workload of workers accordingly. The experimental results show that not only the proposed framework can adapt to environmental changes, but also the proposed framework is effective; even in a stable environment that is dedicated for one application, the proposed framework still demonstrates its significant improvement in self-adaptability. The self-adaptability will be significantly improved while the workload of computing machines unbalanced.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Anderson DP, Cobb J, Korpela E, Lebofsky M, Werthimer D (2002) SETI@home: an experiment in public-resource computing. Commun ACM 45(11):56–61

    Article  Google Scholar 

  2. Armbrust M, Fox A, Griffith R, Joseph AD, Katz RH, Konwinski A, Lee G, Patterson DA, Rabkin A, Stoica I, Zaharia M (2009) Above the cloud: a Berkeley view of cloud computing. Technical Report, Electrical Engineering and Computer Sciences University of California at Berkeley, February 10

  3. Bündgen R, Göbel M, Küchlin W (1996) A master-slave approach to parallel term rewriting on a hierarchical multiprocessor. In: Design and implementation of symbolic computation systems, pp 183–194

    Chapter  Google Scholar 

  4. Chen CC, Henson RN, Stephan KE, Kilner JM, Friston KJ (2009) Forward and backward connections in the brain: a DCM study of functional asymmetries in face processing. NeuroImage 45(2):453–462

    Article  Google Scholar 

  5. Condor (2011) Available: http://www.cs.wisc.edu/condor/

  6. Cramer HA (1958) Mathematical methods of statistics. Princeton University Press, Princeton

    Google Scholar 

  7. Dean J, Ghemawat S (2004) MapReduce: simplified data processing on large clusters. In: Proceedings of 6th symposium on operating system design and implementation, San Francisco, CA, December

    Google Scholar 

  8. Desell T, Cole N, Magdon-Ismail M, Newberg H, Szymanski B, Varela CA (2007) Distributed and generic maximum likelihood evaluation. In: 3rd IEEE international conference on e-science and grid computing (eScience2007), Bangalore, India, pp 337–344

    Chapter  Google Scholar 

  9. Edjali G, Agarwal G, Sussman A, Saltz J (1995) Data parallel programming in an adaptive environment. In: Proceedings of the ninth international parallel processing symposium, Santa Barbara, CA, pp 827–832

    Chapter  Google Scholar 

  10. El Maghraoui K (2007) A framework for the dynamic reconfiguration of scientific applications in grid environments. Rensselaer Polytechnic Institute, PhD thesis, USA

  11. El Maghraoui K, Desell TJ, Szymanski BK, Varela CA (2006) The internet operating system: Middleware for adaptive distributed computing. Int J High Perform Comput Appl 10(4):467–480

    Article  Google Scholar 

  12. Falkenauer E (1998) Genetic algorithms and grouping problems. Wiley, Chichester

    Google Scholar 

  13. Foster I, Kesselman C (2003) The Grid 2: blueprint for a new computing infrastructure. Morgan Kaufmann, San Francisco

    Google Scholar 

  14. Foster I, Kesselman C, Tuecke S (2001) The anatomy of the grid: enabling scalable virtual organizations. Int J High Perform Comput Appl 15(3):200–222

    Article  Google Scholar 

  15. Globus (2011) Available: http://www.globus.org/

  16. Hummel SF, Schonberg E, Flynn LE (1992) Factoring: a method for scheduling parallel loops. Commun ACM 35(8):90–101

    Article  Google Scholar 

  17. Kruskal CP, Weiss A (1985) Allocating independent subtasks on parallel processors. IEEE Trans Softw Eng 11:1001–1016

    Article  MATH  Google Scholar 

  18. Kubatko LS, Carstens BC, Knowles LL (2009) STEM: species tree estimation using maximum likelihood for gene trees under coalescence. Bioinformatics 25(7):971–973

    Article  Google Scholar 

  19. Mahanti A, Eager DL (2004) Adaptive data parallel computing on workstation clusters. J Parallel Distrib Comput 64(11):1241–1255

    Article  MATH  Google Scholar 

  20. Martínez JA, Almeida F, Garzón EM, Acosta A, Blanco V (2011) Adaptive load balancing of iterative computation on heterogeneous nondedicated systems. J Supercomput. doi:10.1007/s11227-011-0595-3

    Google Scholar 

  21. Message Passing Interface Forum (2008) MPI: a message-passing interface standard version 2.1. June. Available: http://www.mpi-forum.org/docs/mpi21-report.pdf

  22. MPICH2 (2011) Available: http://www.mcs.anl.gov/research/projects/mpich2/

  23. Nelder JA, Mead R (1965) A simplex method for function minimization. Comput J 7:308–313

    MATH  Google Scholar 

  24. Polychronopoulos CD, Kuck DJ (1987) Guided self-scheduling: a practical scheduling scheme for parallel supercomputers. IEEE Trans Comput 36:1425–1439

    Article  Google Scholar 

  25. Proutty R, Otto S, Walpole J (1994) Adaptive execution of data parallel computations on networks of heterogeneous workstations. Technical Report CSE-94-012, Oregon Graduate Institute of Science & Technology

  26. Purnell J, Magdon-Ismail M, Newberg H (2005) A probabilistic approach to finding geometric objects in spatial datasets of the Milky Way. In: Proceedings of the 15th international symposium on methodologies for intelligent systems (ISMIS 2005), Saratoga Springs, NY, USA, pp 475–484

    Google Scholar 

  27. Ribler RL, Vetter JS, Simitci H, Reed DA (1998) Autopilot: adaptive control of distributed applications. In: Proceedings of the seventh IEEE symposium on high-performance distributed computing, pp 172–179

    Google Scholar 

  28. Salo O, Kolehmainen K, Kyllönen P, Löthman J, Salmijärvi S, Abrahamsson P (2004) Self-adaptability of agile software processes: a case study on post-iteration workshops. In: Lecture notes in computer science, vol 3092. Springer, Berlin, pp 184–193

    Google Scholar 

  29. Sanjuan-Estrada J, Casado L, García I (2011) Adaptive parallel interval branch and bound algorithms based on their performance for multicore architectures. J Supercomput. doi:10.1007/s11227-011-0594-4

    Google Scholar 

  30. Shao G (2001) Adaptive scheduling of master/worker applications on distributed computational resources. PhD thesis, UC-San Diego, San Diego, USA

  31. Snyman JA (2005) Practical mathematical optimization: an introduction to basic optimization theory and classical and new gradient-based algorithms. Springer, Berlin

    MATH  Google Scholar 

  32. Wang W, El Maghraoui K, Cummings J, Napolitano J, Szymanski B, Varela C (2006) A middleware framework for maximum likelihood evaluation over dynamic grids. In: Second IEEE international conference on e-science and grid computing, Amsterdam, Netherlands

    Google Scholar 

  33. Zanikolas S, Sakellariou R (2005) A taxonomy of grid monitoring systems. Future Gener Comput Syst 21:163–188

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yue-Shan Chang.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Wang, WJ., Chang, YS., Wu, CH. et al. A self-adaptive computing framework for parallel maximum likelihood evaluation. J Supercomput 61, 67–83 (2012). https://doi.org/10.1007/s11227-011-0648-7

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-011-0648-7

Keywords

Navigation