A Method for Prediction Dynamic Characteristics of Parallel Programs Based on Static Analysis
DOI:
https://doi.org/10.14529/cmse210102Keywords:
parallel applications, dynamic characteristics, performance analysis, exaflop systems, computer model, static analysisAbstract
In this paper, we consider the problem of prediction of parallel program dynamic characteristics, like execution time, count of floating-point operations, energy consumption, count of memory accesses and others. Prediction of dynamic characteristics allows solving many problems, related to design of new architectures, selection of the most suitable configurations of multiprocessor systems for solving specific problems, porting applications to new systems, task flow planning and more. The task of predicting characteristics is being actively investigated. Increasing complexity of the architectures of modern high-performance systems requires the development of new methods for solving the prediction problem. The article provides an overview of the existing approaches and software for predicting dynamic characteristics and proposes an approach based on a static analysis of the source code of a parallel application. Based on the text of the parallel program, the formal description of the target computing platform and the launch parameters, a method is implemented that allows predicting the operating time, the number of floating-point operations, number of memory accesses, and other characteristics of the parallel application. The applicability of the proposed approach is demonstrated by solving the test 3-dimensional numerical simulation problem on a multiprocessor cluster based on IBM Power8 processors.
References
Alam S.R., Vetter J.S. A framework to develop symbolic performance models of parallel applications. Proceedings 20th IEEE International Parallel & Distributed Processing Symposium. IEEE, 2006. Vol. 2006. P. 1–8. DOI:10.1109/IPDPS.2006.1639625.
Tallent N.R., Hoisie A. Palm: Easing the Burden of Analytical Performance Modeling. Proceedings of the 28th ACM International Conference Supercomput. 2014. P. 221–230. DOI: 10.1145/2597652.2597683.
Malakar P., Balaprakash P., Vishwanath V., et al. Benchmarking Machine Learning Methods for Performance Modeling of Scientific Applications. 2018 IEEE/ACM Performance Modeling, Benchmarking and Simulation of High Performance Computer Systems, PMBS. IEEE, 2018. P. 33–44. DOI: 10.1109/PMBS.2018.8641686.
Mantevo Project. URL: https://mantevo.github.io (accessed: 03.03.2020).
Williams S., Waterman A., Patterson D. Roofline: an insightful visual performance model for multicore architectures. Commun. ACM. 2009. Vol. 52, no. 4. P. 65–76. DOI: 10.1145/1498765.1498785.
Lee S., Meredith J.S., Vetter J.S. COMPASS: A Framework for Automated Performance Modeling and Prediction. Proceedings of the 29th ACM on International Conference on Supercomputing. ACM Press, 2015. P. 405–414. DOI: 10.1145/2751205.2751220.
Unat D., Chan C., Zhang W., et al. ExaSAT: An exascale co-design tool for performance modeling. Int. J. High Perform. Comput. Appl. 2015. Vol. 29, no. 2. P. 209–232. DOI: 10.1177/1094342014568690.
Spafford K.L., Vetter J.S. Aspen: A domain specific language for performance modeling. 2012 International Conference for High Performance Computing, Networking, Storage and Analysis. IEEE, 2012. P. 1–11. DOI: 10.1109/SC.2012.20.
Zheng G., Kakulapati G., Kale L.V. BigSim: a parallel simulator for performance prediction of extremely large parallel machines. Proceedings of the 18th International Parallel and Distributed Processing Symposium. IEEE, 2004. P. 78–87. DOI: 10.1109/IPDPS.2004.1303013.
Tikir M.M., Laurenzano M.A., Carrington L., et al. PSINS: An open source event tracer and execution simulator. Dep. Def. Proc. High Perform. Comput. Mod. Progr. - Users Gr. Conf. HPCMP-UGC 2009. 2009. P. 444–449. DOI: 10.1109/HPCMP-UGC.2009.73.
Polus. URL: http://hpc.cmc.msu.ru/polus (accessed: 03.03.2020).
Empirical Roofline Tool. URL: https://crd.lbl.gov/departments/computer-science/PAR/research/roofline/software/ert/ (accessed: 03.03.2020).
OSU Micro-Benchmarks. URL: http://mvapich.cse.ohio-state.edu/benchmarks/ (accessed: 03.03.2020).


