Experimental Methodologies for Large-Scale Systems: a Survey

The increasing complexity of available infrastructures with specific features (caches, hyperthreading, dual core, etc.) or with complex architectures (hierarchical, parallel, distributed, etc.) makes it extremely difficult to build analytical models that allow for a satisfying prediction. Hence, it raises the question on how to validate algorithms if a realistic analytic analysis is not possible any longer. As for some many other sciences, the one answer is experimental validation. Nevertheless, experimentation in Computer Science is a difficult subject that today still opens more questions than it solves: What may an experiment validate? What is a ''good experiment''? How to build an experimental environment that allows for "good experiments"? etc. In this paper we will provide some hints on this subject and show how some tools can help in performing ''good experiments'', mainly in the context of parallel and distributed computing. More precisely we will focus on four main experimental methodologies, namely in-situ (real-scale) experiments (with an emphasis on PlanetLab and Grid'5000), Emulation (with an emphasis on Wrekavoc) benchmarking and simulation (with an emphasis on SimGRID and GridSim). We will provide a comparison of these tools and methodologies from a quantitative but also qualitative point of view.

[1]  Sally Floyd,et al.  Wide area traffic: the failure of Poisson modeling , 1995, TNET.

[2]  Paul Lukowicz,et al.  Experimental evaluation in computer science: A quantitative study , 1995, J. Syst. Softw..

[3]  Peter J. Denning,et al.  Is computer science science? , 2005, CACM.

[4]  Jan Broeckhove,et al.  Scalability of Grid Simulators: An Evaluation , 2008, Euro-Par.

[5]  Emmanuel Jeannot,et al.  Wrekavoc: a tool for emulating heterogeneity , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[6]  J.H. Cowie,et al.  Modeling the global Internet , 1999, Comput. Sci. Eng..

[7]  D. Feitelson Experimental Computer Science: the Need for a Cultural Change , 2006 .

[8]  James Stephen Marron,et al.  Mice and Elephants Visualization of Internet Traffic , 2002, COMPSTAT.

[9]  Marvin V. Zelkowitz,et al.  Experimental Models for Validating Technology , 1998, Computer.

[10]  David S. Johnson,et al.  A theoretician's guide to the experimental analysis of algorithms , 1999, Data Structures, Near Neighbor Searches, and Methodology.

[11]  Dan Tsafrir,et al.  Instability in parallel job scheduling simulation: the role of workload flurries , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[12]  Mike Hibler,et al.  An integrated experimental environment for distributed systems and networks , 2002, OSDI '02.

[13]  Luigi Rizzo,et al.  Dummynet: a simple approach to the evaluation of network protocols , 1997, CCRV.

[14]  Thomas Fahringer,et al.  The Otho Toolkit - Synthesizing tailor-made scientific grid application wrapper services , 2007, Multiagent Grid Syst..

[15]  Pedro García López,et al.  PlanetSim: A New Overlay Network Simulation Framework , 2004, SEM.

[16]  Ian Wakeman,et al.  Towards Yet Another Peer-to-Peer Simulator , 2006 .

[17]  Henri Casanova,et al.  Speed and accuracy of network simulation in the SimGrid framework , 2007, Valuetools 2007.

[18]  Franck Cappello,et al.  Grid'5000: A Large Scale And Highly Reconfigurable Experimental Grid Testbed , 2006, Int. J. High Perform. Comput. Appl..

[19]  Peter J. Denning,et al.  ACM president's letter: performance analysis: experimental computer science as its best , 1981, CACM.

[20]  Kurt Stockinger,et al.  OptorSim-A Grid Simulator for Studying Dynamic Data Replication Strategies , 2003 .

[21]  Scott Devine,et al.  Using the SimOS machine simulator to study complex computer systems , 1997, TOMC.

[22]  Franck Cappello,et al.  MPI versus MPI+OpenMP on the IBM SP for the NAS Benchmarks , 2000, ACM/IEEE SC 2000 Conference (SC'00).

[23]  Walter F. Tichy,et al.  Should Computer Scientists Experiment More? , 1998, Computer.

[24]  Andrew A. Chien,et al.  The MicroGrid: using online simulation to predict application performance in diverse grid network environments , 2004, Proceedings of the Second International Workshop on Challenges of Large Applications in Distributed Environments, 2004. CLADE 2004..

[25]  Rajkumar Buyya,et al.  GridSim: a toolkit for the modeling and simulation of distributed resource management and scheduling for Grid computing , 2002, Concurr. Comput. Pract. Exp..

[26]  Rajkumar Buyya,et al.  A taxonomy of computer‐based simulations and its mapping to parallel and distributed systems simulation tools , 2004, Softw. Pract. Exp..

[27]  David H. Bailey,et al.  The Nas Parallel Benchmarks , 1991, Int. J. High Perform. Comput. Appl..

[28]  Stéphane Vialle,et al.  Algorithms for the Grid , 2004 .

[29]  Peter J. Denning,et al.  ACM President's Letter: What is experimental computer science? , 1980, CACM.

[30]  Danny Bickson,et al.  Everlab: A Production Platform for Research in Network Experimentation and Computation , 2007, LISA.

[31]  Yolanda Gil,et al.  Pegasus: Mapping Scientific Workflows onto the Grid , 2004, European Across Grids Conference.

[32]  Peter J. Denning,et al.  Computing as a discipline , 1989, Computer.

[33]  George F. Riley,et al.  The Georgia Tech Network Simulator , 2003, MoMeTools '03.