ABSTRACT
Understanding the behavior of molecular systems such as DNA and proteins is a central problem in the field of physical chemistry. Most research laboratories now have a collection of heterogeneous processing architectures which could be brought to bear on this problem - high end PCs, various different workstations, and time on high performance machines [8, 11, 20]. Much work is currently being done on programming tools to exploit the different architectures, but most of this work to date is aimed at the programmer, who must spend time learning how to use message passing or parallel object oriented languages. The research scientist wishes simply to run their simulations as fast as possible. The work of our group includes the design of an environment[18] for the production of parallel code implementing the simulation of complex polymers, proteins and DNA molecules.The problems encountered in simulations of polymers, DNA and proteins often have straightforward parallel realizations, since the domain can be decomposed either spatially or along the molecular chain, and then a simple extension of the serial algorithm applied (at least for molecular mechanics - Monte Carlo methods need a little more work to ensure the criterion of detailed balance is adhered to) [5, 6, 19]. However, since the problems are completely dynamic in nature, any such decomposition will lead to an inefficient parallelization after sometime. Dynamic load balancing must then be applied to increase a simulations efficiency.To resolve the problem several load-balancing techniques have been proposed for SIMD [2, 16] and MIMD [12, 21,23, 25] models. We can distinguish between static and dynamic techniques. In contrast to static load balancing, where the decision as to which processors the workload is allocated is fixed at compilation, dynamic load balancing takes the behavior of the application and the system characteristics into account to distribute fairly the workload among the available processors. Dynamic load balancing is also characterized by the manner in which data are exchanged and controlled. The control can be centralized [22, 4] or distributed [14, 28, 7]. Distributed load balancing strategies are incorporated to each node of the system so that each can make decisions independently of the others.The control phase is characterized by the collection of information on the state of the system, such as the load on a processor, the number of idle processors, etc., and the decision making (whether the system is balanced or not). This phase is often absent in dynamic distribution strategies for data-parallel applications [9, 10, 17, 24]. The distribution phase is the main body of all algorithms which are generally based on the following criteria: 1) fair distribution of load, 2) minimization of communication introduced by the new distribution, 3) efficiency of the distribution procedure for data migrating from overloaded nodes to under-loaded (efficient routing algorithm), 4) respecting the topology of the application, and 5) simplicity of the algorithm to reduce to a minimum the execution time of the algorithm.Problems in the area of molecular simulation, among others, can be characterized by the fact that some part of the problem topology remains fixed at least for large parts of the simulation. Chemically bonded monomer groups remain close to their neighbors for large parts of the simulation. Load balancing techniques that redistribute the problem domain without taking this fact into account lead to increased levels of communication, and to a reduction in efficiency.Our work is in developing topology preserving load balancing algorithms for MIMD machines, and in this paper we focus on the analysis and performance of one such algorithm, Positional Scan Load Balancing, and its suitability for use in the runtime system of the parallel simulation environment.
- A. Baumgartner. Statics and Dynamics of the Freely Jointed Polymer Chain with Lennard-Jones Interaction. Journal of Chemical Physics, 72(2):871-879, Jan. 1980.Google ScholarCross Ref
- E. S. Biagioni. Scan Directed Load Balancing. PhD thesis, University of North Carolina at Chapel Hill, 1991. Google ScholarDigital Library
- R. H. Bisseling and W. F. McColl. Scientific Computing on Bulk Synchronous Parallel Architectures. Technical Report 836, Department of Mathematics, University of Utrecht, December 1993. Short version appears in Proc. 13th IFIP World Computer Congress. Volume I (1994), B. Pehrson and I. Simon, Eds., Elsevier, pp. 509-514.Google Scholar
- R. Biswas, L. Oliker, and A. Sohn. Global Load balancing with Parallel Mesh Adaption on Distributed-Memory Systems. In Intl. Conference on Supercomputing, November, 17-22 1996. Google ScholarDigital Library
- W. J. Camp, S. J. Plimpton, B. A. Hendrickson, and R. W. Leland. Massively Parallel Methods for Engineering and Science Problems. Communication of the ACM, 37(4):31-41, April 1994. Google ScholarDigital Library
- C. Che Chen, J. P. Singh, W. B. Poland, and R. B. Altman. Parallel Protein Structure Determination from Uncertain Data. In Proceedings of Supercomputing'94, 1994. Google ScholarDigital Library
- G. Cybenko. Dynamic Load Balancing for Distributed-Memory Multiprocessors. Journal of Parallel and Distributed Computing, 27:279-301, 1989. Google ScholarDigital Library
- D. Nortkin, A. P. Black, E. D. Lazowska, H. M. Levy, J. Sanislo, and J. Zahorjan. Interconnecting Heterogeneous Computer Systems. Communications of the ACM, 31(3):258-273, March 1988. Google ScholarDigital Library
- R. Van Driessche and D. Roose. Dynamic Load Balancing with a Spectral Bis-section Algorithm for the Constrained Graph Partitioning Problem. In Proc. of High-Performance Computing and Networking, Milan, Italy, 1995. Google ScholarDigital Library
- N. Floros, J. S. Reeve, J. Clinckemaillie, S. Vlachoutsis, and G. Lonsdale. Comparative Efficiencies of Domain Decompositions. Parallel Computing, 21:1823-1835, 1995. Google ScholarDigital Library
- R. F. Freund and H. J. Siegel. Heterogeneous Processing. IEEE Computer, (6):13-17, June 1993. Google ScholarDigital Library
- M. Furuichi, K. Taki, and N. Ichiyoshi. A Multi-level Load Balancing Scheme for OR-Parallel Exhaustive Search Programs on the Multi-PSI. In Proceedings of the 2nd ACM SIGPLAN Symposium on Priciples and Practice of Parallel Programming, pages 50-59, 1990. Google ScholarDigital Library
- D. C. Grundwald, B. A. Nazief, and D. A. Reed. Empirical Comparison of Heuristic Load Distribution in Point-to-Point Multicomputer Networks. In Proc. of the 5th Distributed Memory Computins Conference, pages 984-993, April 1990.Google Scholar
- A. Ha'c and T. J. Johnson. Sensisitivity Study of the Load Balancing Algorithm in a Distributed System. Journal of Parallel and Distributed Computing, pages 85-89, October 1990. Google ScholarDigital Library
- L. V. Kale. Comparing the Performance of Two Dynamic Load Distribution Methods. In Proc. of the Int'l. Conf. on Parallel Processing, pages 8-12, 1988.Google Scholar
- G. Karypis and V. Kumar. Unstructured Tree Search on SIMD Parallel Computers. Technical Report 92-21, Department of Computer Science, University of Minnesota Minneapolis, MN 55455, April 1992.Google Scholar
- G. Karypis and V. Kumar. Parallel Multilevel K-way Partitioning Scheme for Irregular Graphs. In Intl. Conference on Supercomputing, November, 17-22 1996. Google ScholarDigital Library
- T. Kechadi, P. Kiernan, D. Hegarty, and K. Dawson. Parallel Simulation Environment for Polymers, DNA and Protein Molecular Chains. In Proceedings of the International Conference and Exhibition on High-Performance Computing and Networking (HPCN'96), Brussels, Belgium, April 1996. Google ScholarDigital Library
- D. E. Keyes and W. D. Gropp. A Comparison of Domain Decomposition Techniques for Elliptic Partial Differential Equations and their Parallel Implementation. SIAM Journal of Scientific and Statistical Computing, 8:166-202, March 1987. Google ScholarDigital Library
- A. A. Khokhar, V. K. Prasanna, M. E. Shaaban, and C-L. Wang. Heterogeneous Computing: Challenges and Opportunities. IEEE Computer, (6):18-27, June 1993. Google ScholarDigital Library
- M. H. Willebeek-Le Mair and A. P. Reeves. Strategies for Dynamic Load Balancing on Highly Parallel Computers. IEEE Transactions on Parallel and Distributed Systems, 4(9), September 1993. Google ScholarDigital Library
- L. M. Ni and K. Hwang. Optimal Load Balancing in Multiple Processor System with Many jobs Classes. IEEE Transactions on Software Engineering, SE-11:491-496, May 1985.Google ScholarDigital Library
- S. Patil and P. Banerjee. A Parallel Branch and Bound Algorithm for Test Generation. IEEE Transactions on Computer Aided Design, 9(9), March 1990.Google Scholar
- J. R. Pilkington and S. B. Baden and. Dynamic Partitioning of Non-Uniform Structured Workloads with Spacefiling Curves. IEEE Transactions on parallel and Distributed Systems, 7(3):288-300, March 1996. Google ScholarDigital Library
- W. Shu and L. V. Kale. A Dynamic Scheduling Strategy for the Chare-Kernel System. In Proceedings of Supercomputing'89, pages 389-398, 1989. Google ScholarDigital Library
- University of Tennessee, Knoxville, Tennessee. MPI: A Message-Passing Interface Standard, May 1994. URL: http://www.mcs.anl.gov/Projects/mpi/standard.html.Google Scholar
- L. G. Valiant. A Bridging model for parallel computation. Communications of the ACM, 33(8):103-111, 1990. Google ScholarDigital Library
- J. Xu and K. Hwang. Heuristic Methods for Dynamic Load Balancing in a Message-Passing Supercomputer. In Proc. of Supercomputer'90, pages 888-897, November 1990. Google ScholarDigital Library
- Topology preserving dynamic load balancing for parallel molecular simulations
Recommendations
A Dynamic Load Balancing Algorithm for Conservative Parallel Simulations
MASCOTS '97: Proceedings of the 5th International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunications SystemsLoad balancing is an important component in improving the efficiency of distributed systems because it distributes an even workload over all the processors. This paper considers the problem of load-balancing a conservative parallel simulation for ...
Dynamic topology aware load balancing algorithms for molecular dynamics applications
ICS '09: Proceedings of the 23rd international conference on SupercomputingMolecular Dynamics applications enhance our understanding of biological phenomena through bio-molecular simulations. Large-scale parallelization of MD simulations is challenging because of the small number of atoms and small time scales involved. Load ...
Strategies for Dynamic Load Balancing on Highly Parallel Computers
Dynamic load balancing strategies for minimizing the execution time of single applications running in parallel on multicomputer systems are discussed. Dynamic load balancing (DLB) is essential for the efficient use of highly parallel systems when ...
Comments