Abstract
Understanding the measured performance of parallel applications in real systems is difficult—with the aim to utilize the resources available, optimizations deployed in hardware and software layers build up to complex systems. However, in order to identify bottlenecks the performance must be assessed.
This paper introduces PIOsimHD, an event-driven simulator for MPI-IO applications and the underlying (heterogeneous) cluster computers. With the help of the simulator runs of MPI-IO applications can be conducted in-silico; this includes detailed simulation of collective communication patterns as well as simulation of parallel I/O. The simulation estimates upper bounds for expected performance and helps assessing observed performance.
Together with HDTrace, an environment which allows tracing the behavior of MPI programs and internals of MPI and PVFS, PIOsimHD enables us to localize inefficiencies, to conduct research on optimizations for communication algorithms, and to evaluate arbitrary and future systems. In this paper the simulator is introduced and an excerpt of the conducted validation is presented, which demonstrates the accuracy of the models for our cluster.
Similar content being viewed by others
Notes
The mentioned experiments are described and assessed in the Ph.D. Thesis of the author, which will be published 2012.
Measurements are made with MPICH2 1.3.2 and OpenMPI 1.5.3 as a reference.
References
Geimer M, Wolf F, Wylie BJN, Becker D, Böhme D, Frings WF, Hermanns MA, Mohr B, Szebenyi Z (2009) Recent developments in the scalasca toolset. In: Tools for high performance computing, proceedings of the 3rd international workshop on parallel tools. Springer, Berlin
Girona S, Labarta J, Badia RM (2000) Validation of dimemas communication model for MPI collective operations. In: Proceedings of the 7th European PVM/MPI users’ group meeting on recent advances in parallel virtual machine and message passing interface. Springer, Berlin, pp 39–46
Hermanns MA, Geimer M, Wolf F, Wylie BJN (2009) Verifying causality between distant performance phenomena in large-scale MPI applications. In: Proceedings of the 2009 17th Euromicro international conference on parallel, distributed and network-based processing. IEEE Comput Soc, Los Alamitos, pp 78–84
Hoefler T, Schneider T, Lumsdaine A (2010) LogGOPSim: simulating large-scale applications in the LogGOPS model. In: Proceedings of the 19th ACM international symposium on high performance distributed computing, HPDC’10. ACM, New York, pp 597–604
Knüpfer A, Brunst H, Doleschal J, Jurenz M, Lieber M, Mickler H, Müller MS, Nagel WE (2008) The vampir performance analysis tool-set. In: Tools for high performance computing, proceedings of the 2nd international workshop on parallel tools. Springer, Berlin, pp 139–155
Kuhn M, Kunkel J, Ludwig T (2012) Simulation-aided performance evaluation of server-side input/output optimizations. In: PDP 2012. IEEE Press, New York. Munich network management team
Kunkel J (2011) HDTrace—a tracing and simulation environment of application and system interaction. Tech Rep 2, research group: scientific computing, University of Hamburg
Rodrigues AF, Murphy RC, Kogge P, Underwood KD (2006) The structural simulation toolkit: exploring novel architectures. In: Proceedings of the 2006 ACM/IEEE conference on supercomputing, SC’06. ACM, New York
Shende SS, Malony AD (2006) The Tau parallel performance system. Int J High Perform Comput Appl 20(2):287–311
Tu B, Fan J, Zhan J, Zhao X (2009) Accurate analytical models for message passing on multi-core clusters. In: Proceedings of the 2009 17th Euromicro international conference on parallel, distributed and network-based processing. IEEE Comput Soc, Los Alamitos, pp 133–139
Wolfgang Kreutzer BP (2005) The Java simulation handbook: simulating discrete event systems with UML and Java. Shaker, Aachen
Author information
Authors and Affiliations
Corresponding author
Additional information
Thanks to Nathanel Hübbe for reviewing this paper.
Rights and permissions
About this article
Cite this article
Kunkel, J.M. Simulating parallel programs on application and system level. Comput Sci Res Dev 28, 167–174 (2013). https://doi.org/10.1007/s00450-012-0208-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00450-012-0208-2