Planting parallel program simulation on the cloud
Corresponding Author
Antonio Cuomo
Department of Engineering, University of Sannio, Piazza Roma 21, 82100 Benevento, Italy
Correspondence to: Antonio Cuomo, Department of Engineering, University of Sannio, Piazza Roma 21, 82100 Benevento, Italy.
E-mail: [email protected]
Search for more papers by this authorMassimiliano Rak
Department of Information Engineering, Second University of Naples, Via Roma 29, 81031 Aversa, Italy
Search for more papers by this authorUmberto Villano
Department of Engineering, University of Sannio, Piazza Roma 21, 82100 Benevento, Italy
Search for more papers by this authorCorresponding Author
Antonio Cuomo
Department of Engineering, University of Sannio, Piazza Roma 21, 82100 Benevento, Italy
Correspondence to: Antonio Cuomo, Department of Engineering, University of Sannio, Piazza Roma 21, 82100 Benevento, Italy.
E-mail: [email protected]
Search for more papers by this authorMassimiliano Rak
Department of Information Engineering, Second University of Naples, Via Roma 29, 81031 Aversa, Italy
Search for more papers by this authorUmberto Villano
Department of Engineering, University of Sannio, Piazza Roma 21, 82100 Benevento, Italy
Search for more papers by this authorSummary
The writing of efficient parallel code has always been a tedious and time-consuming process. However, the performance prediction prototype tools devised in the last decade come of age now, thanks to the availability of the almost unlimited computing power of clouds. This paper presents the practical use of mJADES, a novel environment for running multiple concurrent simulations in the cloud, to predict the performance of parallel code in multiple working conditions at once. After an introduction on mJADES and its operational aspects, the construction of parallel code performance prediction models will be dealt with. The models and the results obtained for a simple but complete and meaningful case study will be presented, discussing the accuracy obtained by simulation and the time required for performing the whole set of simulations necessary to characterize the program behavior. Copyright © 2013 John Wiley & Sons, Ltd.
References
- 1 Smith CU. Introduction to software performance engineering: Origins and outstanding problems. In SFM, Vol. 4486, M Bernardo, J Hillston (eds), Lecture Notes in Computer Science. Springer: Berlin Heidelberg, 2007; 395–428.
- 2 Smith CU, Williams LG. Introduction to software performance engineering. Int. CMG Conference, Computer Measurement Group, Las Vegas, Nevada, USA, 2004; 853–864.
- 3
Balsamo S,
Marzolla M. A simulation-based approach to software performance modeling. In Proceedings of the 9th European Software Engineering Conference Held Jointly with 11th ACM SIGSOFT International Symposium on Foundations of Software Engineering, ESEC/FSE-11. ACM: New York, NY, USA, 2003; 363–366, DOI: 10.1145/940071.940122.
10.1145/940071.940122 Google Scholar
- 4
López-Grao JP,
Merseguer J,
Campos J. From UML activity diagrams to Stochastic Petri nets: Application to software performance engineering. SIGSOFT Software Engineering Notes 2004; 29(1): 25–36. DOI: 10.1145/974043.974048.
10.1145/974043.974048 Google Scholar
- 5 Becker S, Koziolek H, Reussner R. The Palladio component model for model-driven performance prediction. Journal of Systems and Software 2009; 82(1): 3–22. DOI: 10.1016/j.jss.2008.03.066.
- 6 Aversa R, Mazzeo A, Mazzocca N, Villano U. Heterogeneous system performance prediction and analysis using PS. IEEE Concurrency 1998; 6(3): 20–29.
- 7 Mazzocca N, Rak M, Villano U. MetaPL: A notation system for parallel program description and performance analysis. In Parallel Computing Technologies, Vol. 2127, VE Malyshkin (ed.), Lecture Notes in Computer Science. Springer-Verlag: Berlin Heidelberg, 2001; 80–93.
- 8 Aversa R, Di Martino B, Rak M, Venticinque S, Villano U. Performance prediction through simulation of a hybrid MPI/openMP application. Parallel Computing 2005; 31(10–12): 1013–1033.
- 9
Mancini E,
Villano U,
Mazzocca N,
Rak M,
Torella R. Performance-driven development of a web services application using MetaPL/HeSSE. In Proceedings of the 13th Euromicro Conference on Parallel and Distributed Processing. IEEE Computer Society: Washington, DC, USA, 2005; 12–19.
10.1109/EMPDP.2005.31 Google Scholar
- 10 Di Martino B, Mancini E, Rak M, Torella R, Villano U. Cluster systems and simulation: From benchmarking to off-line performance prediction. Concurrency and Computation: Practice and Experience 2007; 19(11): 1549–1562.
- 11 Aversa R, Di Martino B, Rak M, Venticinque S, Villano U. In Performance Prediction for HPC on Clouds, chap. 17. John Wiley & Sons, Inc., 2011; 437–456, DOI: 10.1002/9780470940105.ch17.
- 12 Cuomo A, Rak M, Villano U. mJADES: Concurrent simulation in the cloud. 2nd International Workshop on Intelligent Computing at Large Scale, Palermo, Italy, July 4–6, 2012; 853–860, DOI: 10.1109/CISIS.2012.134.
- 13 Fujimoto RM. Parallel discrete event simulation. Communications of the ACM 1990; 33: 30–53.
- 14 Perumalla KS. Parallel and distributed simulation: Traditional techniques and recent advances. Proceedings of the 38th Conference on Winter Simulation, Winter Simulation Conference, New Orleans, LA, 2006; 84–95.
- 15 Fujimoto RM. Distributed simulation systems. Proceedings of the 35th Conference on Winter Simulation: Driving Innovation, WSC '03, Winter Simulation Conference, New Orleans, LA, 2003; 124–134.
- 16 Cuomo A, Rak M, Villano U. Process-oriented discrete-event simulation in Java with continuations: Quantitative performance evaluation. In Proceedings of the International Conference on Simulation and Modeling Methodologies, Technologies and Applications (SIMULTECH). SciTePress: Setubal, Portugal, 2012; 87–96.
- 17
Messina F,
Pappalardo G,
Santoro C. ComplexSim: An SMP-aware complex network simulation framework. In 2012 Sixth International Conference on Complex, Intelligent, and Software Intensive Systems. IEEE: Washington, DC, USA, 2012; 861–866.
10.1109/CISIS.2012.102 Google Scholar
- 18
Pelkey J,
Riley G. Distributed simulation with MPI in ns-3. In Proceedings of the 4th International ICST Conference on Simulation Tools and Techniques. ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering): Brussels, Belgium, 2011; 410–414.
10.4108/icst.simutools.2011.245585 Google Scholar
- 19 Chandy KM, Misra J. Distributed simulation: A case study in design and verification of distributed programs. IEEE Transactions on Software Engineering 1979; SE-5(5): 440–452.
- 20 Jefferson D, Sowizral H. Fast concurrent simulation using the time warp mechanism. SCS Conf. Distributed Simulation, San Diego, CA, 1985; 63–69.
- 21
Castilla I,
Aguilar RM,
Callero Y. Java for parallel discrete event simulation: A survey. International Journal of Simulation and Process Modelling Jan 2011; 6(4): 250–260. DOI: 10.1504/IJSPM.2011.048006.
10.1504/IJSPM.2011.048006 Google Scholar
- 22
Heidelberger P. Statistical analysis of parallel simulations. In Proceedings of the 18th Conference on Winter Simulation, WSC '86. ACM: New York, NY, USA, 1986; 290–295.
10.1145/318242.318448 Google Scholar
- 23 Marr C, Storey C, Biles WE, Kleijnen JPC. A Java-based simulation manager for web-based simulation. Simulation Conference, 2000. Proceedings. Winter, Vol. 2, Orlando, FL, 2000; 1815–1822, DOI: 10.1109/WSC.2000.899174.
- 24 Healy KJ, Kilgore RA. Introduction to SILK and Java-based simulation. In Proceedings of the 30th Conference on Winter Simulation, WSC '98. IEEE Computer Society Press: Los Alamitos, CA, USA, 1998; 327–334.
- 25
Seo C,
Han Y,
Lee H,
Jung J,
Lee C. Implementation of cloud computing environment for discrete event system simulation using service oriented architecture. In 2010 IEEE/IFIP 8th International Conference on Embedded and Ubiquitous Computing (EUC). IEEE: Washington, DC, USA, 2010; 359–362.
10.1109/EUC.2010.60 Google Scholar
- 26
Guo S,
Bai F,
Hu X. Simulation software as a service and service-oriented simulation experiment. In IEEE International Conference on Information Reuse and Integration (IRI). IEEE: Las Vegas, Nevada, USA, 2011; 113–116.
10.1109/IRI.2011.6009531 Google Scholar
- 27 Tsai W, Li W, Sarjoughian H, Shao Q. SimSaaS: Simulation software-as-a-service. In Proceedings of the 44th Annual Simulation Symposium. Society for Computer Simulation International: San Diego, CA, USA, 2011; 77–86.
- 28
Park A,
Fujimoto R. A scalable framework for parallel discrete event simulations on desktop grids. In 2007 8th IEEE/ACM International Conference on Grid Computing. IEEE: Washington, DC, USA, 2007; 185–192.
10.1109/GRID.2007.4354132 Google Scholar
- 29 Fujimoto R, Malik A, Park A. Parallel and distributed simulation in the cloud. SCS M&S Magazine 2010; 3.
- 30
D'Angelo G. Parallel and distributed simulation from many cores to the public cloud. In 2011 International Conference on High Performance Computing and Simulation (HPCS). IEEE: Washington, DC, USA, 2011; 14–23.
10.1109/HPCSim.2011.5999802 Google Scholar
- 31 Taylor S, Ghorbani M, Kiss T, Farkas D, Mustafee N, Kite S, Turner S, Strassburger S. Distributed computing and modeling & simulation: Speeding up simulations and creating large models. Proceedings of the 2011 Winter Simulation Conference, Phoenix, AZ, 2011; 161–175.
- 32
von Laszewski G,
Diaz J,
Wang F,
Fox G. Comparison of multiple cloud frameworks. In 2012 IEEE 5th International Conference on Cloud computing (CLOUD), IEEE: Washington, DC, USA, 2012; 734–741.
10.1109/CLOUD.2012.104 Google Scholar
- 33 Mancini E, Rak M, Villano U. Perfcloud: GRID services for performance-oriented development of cloud computing applications. In 18th IEEE International Workshops on Enabling Technologies: Infrastructures for Collaborative Enterprises, WETICE 2009, Groningen, the Netherlands, 29 june - 1 july 2009, Proceedings, S Reddy (ed.). IEEE Computer Society: Washington, DC, USA, 2009; 201–206.
- 34 Tusa F, Paone M, Villari M, Puliafito A. CLEVER: A cloud-enabled virtual environment. 2010 IEEE Symposium on Computers and Communications (ISCC), Riccione, Italy, 2010june; 477–482, DOI: 10.1109/ISCC.2010.5546555.
- 35
Petcu D,
Macariu G,
Panica S,
Craciun C. Portable cloud applications-from theory to practice. Future Generation Computer Systems 2012. DOI: 10.1016/j.future.2012.01.009. (Available from: http://www.sciencedirect.com/science/article/pii/S0167739X12000210) [Accessed on 7 January 2013], In press.
10.1016/j.future.2012.01.009 Google Scholar
- 36 Petcu D, Crăciun C, Neagul M, Panica S, Di Martino B, Venticinque S, Rak M, Aversa R. Architecturing a sky computing platform. In Towards a Service-Based Internet. Servicewave 2010 Workshops. Springer: Berlin Heidelberg, 2011; 1–13.
- 37
Petcu D,
Craciun C,
Neagul M,
Lazcanotegui I,
Rak M. Building an interoperability API for sky computing. In 2011 International Conference on High Performance Computing and Simulation (HPCS). IEEE: Washington, DC, USA, 2011; 405–411.
10.1109/HPCSim.2011.5999853 Google Scholar
- 38 Petcu D, Craciun C, Rak M. Towards a cross platform cloud API. Components for cloud federation. In Procs. 1st International Conference on Cloud Computing and Services Science. Scitepress–Science and Technology publications: Setubal, portugal, 2011; 166–169.
- 39
Prakash S,
Bagrodia R. MPI-SIM: Using parallel simulation to evaluate MPI programs. In Proceedings of the 30th Conference on Winter Simulation. IEEE Computer Society Press: Los Alamitos, CA, USA, 1998; 467–474.
10.1109/WSC.1998.745023 Google Scholar
- 40 Badia R, Labarta J, Gimenez J, Escale F. Dimemas: Predicting MPI applications behavior in grid environments. Workshop on Grid Applications and Programming Tools (GGF8), Vol. 86, Seattle, WA, USA, 2003; 52–62.
- 41 Zhai J, Chen W, Zheng W. Phantom: Predicting performance of parallel applications on large-scale parallel machines using a single node. ACM Sigplan Notices 2010; 45(5): 305–314.
- 42
Achour S,
Ammar M,
Khmili B,
Nasri W. MPI-PERF-SIM: Towards an automatic performance prediction tool of MPI programs on hierarchical clusters. In Parallel, Distributed and Network-Based Processing (PDP), 2011 19th Euromicro International Conference on. IEEE: Washington, DC, USA, 2011; 207–211.
10.1109/PDP.2011.49 Google Scholar
- 43
Rodrigues A,
Hemmert K,
Barrett B,
Kersey C,
Oldfield R,
Weston M,
Risen R,
Cook J,
Rosenfeld P,
Cooper-Balis E,
Jacob B. The structural simulation toolkit. ACM SIGMETRICS Performance Evaluation Review 2011; 38(4): 37–42.
10.1145/1964218.1964225 Google Scholar
- 44
Clauss P,
Stillwell M,
Genaud S,
Suter F,
Casanova H,
Quinson M. Single node on-line simulation of MPI applications with SMPI. In 2011 IEEE International Parallel & Distributed Processing Symposium (IPDPS). IEEE: Washington, DC, USA, 2011; 664–675.
10.1109/IPDPS.2011.69 Google Scholar
- 45 Susukita R, Ando H, Aoyagi M, Honda H, Inadomi Y, Inoue K, Ishizuki S, Kimura Y, Komatsu H, Kurokawa M, Murakami K, Shibamura H, Yamamura S, Yu Y. Performance prediction of large-scale parallell system and application using macro-level simulation. In Proceedings of the 2008 ACM/IEEE Conference on Supercomputing. IEEE Press: Piscataway, NJ, USA, 2008; 20.
- 46
Zheng G,
Kakulapati G,
Kalé L. Bigsim: A parallel simulator for performance prediction of extremely large parallel machines. In Parallel and Distributed Processing Symposium, 2004. Proceedings. 18th International. IEEE: Washington, DC, USA, 2004; 78.
10.1109/IPDPS.2004.1303013 Google Scholar
- 47 Cuomo A, Rak M, Villano U. Cloud-based concurrent simulation at work: Fast performance prediction of parallel programs. Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE), 2012 21th IEEE International Workshops on - Toulouse, 25-27 june 2012, 2012; 137–142, DOI: 10.1109/WETICE.2012.74.
- 48 Mazzocca N, Rak M, Villano U. MetaPL: A notation system for parallel program description and performance analysis. In Parallel Computing Technologies, Vol. 2127, V Malyshkin (ed.), Lecture Notes in Computer Science. Springer-Verlag: Berlin Heidelberg, 2001; 80–93.
- 49 Hoefler T, Schneider T, Lumsdaine A. Loggopsim-simulating large-scale applications in the loggops model. Proceedings of the 19th ACM International Symposium on High Performance Distributed Computing, HPDC, Vol. 10, Chicago, IL, USA, 2010; 597–604.
- 50 Wu X, Mueller F. Scalaextrap: Trace-based communication extrapolation for SPMD programs. SIGPLAN Notices 2011; 46(8): 113.
- 51
Cascaval C,
DeRose L,
Padua D,
Reed D. Compile-time based performance prediction. In Languages and Compilers for Parallel Computing, Vol. 1863. Springer: Berlin Heidelberg, 2000; 365–379.
10.1007/3-540-44905-1_23 Google Scholar
- 52
Marin G,
Mellor-Crummey J. Cross-architecture performance predictions for scientific applications using parameterized models. ACM SIGMETRICS Performance Evaluation Review, ACM 2004; 32(1): 2–13.
10.1145/1012888.1005691 Google Scholar
- 53 Andrews G. Foundations of Multithreaded, Parallel, and Distributed Programming. Addison-Wesley: Boston, MA, USA, 2002.
- 54 Boden N, Cohen D, Felderman R, Kulawik A, Seitz C, Seizovic J, Su W. Myrinet: A gigabit-per-second local area network. IEEE Micro 1995; 15(1): 29–36.