Dynamic load balance for approximate parallel simulations with consistent hashing

Parallel simulation is a powerful tool to evaluate the performance of large-scale systems. However when it comes to simulating large scale Web search engines, the parallel simulation execution can introduce imbalance among processors because event occurrence is driven by user behavior which is unpredictable, making events take place in different parts of the system in an irregular manner. In this paper, we study the impact of load balance strategies on the performance of a parallel simulation strategy. In particular, we present a consistent hashing load balance algorithm aimed to reduce queuing waiting times, evenly distribute the costs of executing events among processors, and more importantly migration of logical processes only occurs between neighbor processors. We use a Web search engine composed by services deployed on a cluster of processors as the application case study. Our simulations are driven by actual query log traces. We evaluate our proposed load balance algorithm in terms of running time, communication, memory consumption and accuracy. Results show that the proposed load balance strategy is capable of reducing the execution times of simulations and maintaining quality of results.

[1]  David R. Karger,et al.  Consistent hashing and random trees: distributed caching protocols for relieving hot spots on the World Wide Web , 1997, STOC '97.

[2]  Azzedine Boukerche,et al.  Dynamic balancing of communication and computation load for HLA-based simulations on large-scale distributed systems , 2011, J. Parallel Distributed Comput..

[3]  Iadh Ounis,et al.  Performance analysis of distributed information retrieval architectures using an improved network simulation model , 2007, Inf. Process. Manag..

[4]  Mauricio Marín,et al.  Approximate parallel simulation of web search engines , 2013, SIGSIM PADS '13.

[5]  Abdur Chowdhury,et al.  Operational requirements for scalable search systems , 2003, CIKM '03.

[6]  Andrei Z. Broder,et al.  Efficient query evaluation using a two-level retrieval process , 2003, CIKM '03.

[7]  Evangelos P. Markatos,et al.  On caching search engine query results , 2001, Comput. Commun..

[8]  Sajal K. Das,et al.  Educing Null Messages Overhead through Load Balancing in Conservative Distributed Simulation Systems , 2004, J. Parallel Distributed Comput..

[9]  Roberto Beraldi,et al.  Space uncertain simulation events: some concepts and an application to optimistic synchronization , 2004, 18th Workshop on Parallel and Distributed Simulation, 2004. PADS 2004..

[10]  Veronica Gil Costa,et al.  New caching techniques for web search engines , 2010, HPDC '10.

[11]  R. M. Fujimoto,et al.  Parallel discrete event simulation , 1989, WSC '89.

[12]  Wei Zhang,et al.  A Multi-State Q-Learning Approach for the Dynamic Load Balancing of Time Warp , 2010, 2010 IEEE Workshop on Principles of Advanced and Distributed Simulation.

[13]  Peter Martini,et al.  A Flexible Dynamic Partitioning Algorithm for Optimistic Distributed Simulation , 2007, 21st International Workshop on Principles of Advanced and Distributed Simulation (PADS'07).

[14]  Emilio Luque,et al.  A Fault-Tolerant Cache Service for Web Search Engines , 2012, ISPA 2012.

[15]  Roberto Baldoni,et al.  Exploiting Intra-Object Dependencies in Parallel Simulation , 1999, Inf. Process. Lett..

[16]  Philip A. Wilsey,et al.  Unsynchronized parallel discrete event simulation , 1998, 1998 Winter Simulation Conference. Proceedings (Cat. No.98CH36274).

[17]  Julian M. Kunkel,et al.  Using Simulation to Validate Performance of MPI(-IO) Implementations , 2013, ISC.

[18]  Mauricio Marín,et al.  AMEDS-tool: an automatic tool to model and simulate large scale systems , 2014, SummerSim.

[19]  Leslie G. Valiant,et al.  A bridging model for parallel computation , 1990, CACM.

[20]  Stephen John Turner,et al.  Load balancing for conservative simulation on shared memory multiprocessor systems , 2000, Proceedings Fourteenth Workshop on Parallel and Distributed Simulation.

[21]  Veronica Gil Costa,et al.  Location cache for web queries , 2009, CIKM.

[22]  Yang Yang,et al.  A load balance algorithm based on nodes performance in Hadoop cluster , 2014, The 16th Asia-Pacific Network Operations and Management Symposium.

[23]  Rajkumar Buyya,et al.  CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms , 2011, Softw. Pract. Exp..