Abstract
In this paper we consider the possibility of using the gem5 computer system simulator to determine such metrics of parallel program code as its acceleration and the average workload of cpu cores on computer systems with shared memory. The working process in gem5 consists of three stages: building a model of a computer system, loading a software environment into the built model and executing a user program within this environment. The considered approach is used to evaluate the efficiency of a parallel program for modeling the transport of pollutants in the atmosphere. The program assumes both intensive work with memory and strong interaction between computational threads within the framework of parallel computing. For this purpose, two models of computer systems were created in the gem5 simulator: the simplest functional model of the “cores–RAM ” type and the detailed clock model of the “cores–three-level cache–RAM ” type. By running the program on both computer models and comparing obtained results with those observed on a real computer, it is shown that the computer system models created in gem5 are operable, correctly reproduce the functionality of real computer systems, and can be used to obtain fairly accurate estimates of such metrics as the acceleration of the program and the average workload of cpu cores. It should be noted that the accuracy of the estimates slightly depends on the number of simulated cores in computer models. For example, the acceleration accuracy obtained on the detailed clock model is 0.7 % on five cores and might increase up to 10 % on 32 cores.
Publisher
Izdatel'skii dom Spektr, LLC
Subject
General Materials Science
Reference10 articles.
1. Bellard F. (2005). QEMU, a Fast and Portable Dynamic Translator. The Proceedings of the FREENIX Track: 2005 USENIX Annual Technical Conference, pp. 41 – 46. Anaheim.
2. Aarno D., Engblom J. (2014). Software and System Development Using Virtual Platforms: Full-System Simulation with Wind River Simics. Morgan Kaufmann.
3. Yourst M. T. (2007). PTLsim: a Cycle Accurate Full System x86-64 Microarchitectural Simulator. IEEE International Symposium on Performance Analysis of Systems and Software, pp. 23 – 34. San Jose.
4. Binkert N., Beckmann B., Black G. et al. (2011). The gem5 simulator. ACM SIGARCH Computer Architecture News, Vol. 39 (2), pp. 1 – 7.
5. Patel A., Afram F., Chen S., Ghose K. (2011). MARSS: a Full System Simulator for Multicore x86 Cpus. The Proceedings of the 48th Design Automation Conference (DAC), pp. 1050 – 1055. San Diego.