Abstract
Hardware simulation is always a compromise between the speed of the simulator and the accuracy of the estimated runtime on the real hardware. Instrumenting fast simulation frameworks to estimate runtimes always results in tremendous slow-downs. In this paper, a quantization is done regarding the minimal overhead that can be expected when adding architectural models to a fast JIT enhanced emulation. Previous work is only focused on new approaches and improving available methods, but not on the unavoidable overhead that is introduced with any kind of instrumentation. Thus, the additional simulation time of calling an empty stub function instead of a fully implemented architectural model is investigated. We show relative runtimes for calling a function after executing each instruction and after executing a block of instructions. Also, a comparison against fully implemented models is done. On the test platforms, an academic and a commercial processor simulator were evaluated. The resulting average relative runtimes of the minimal introduced overhead are determined to be between 2.24 and 8.09 meaning that an emulation takes twice to eight times as long with instrumentation enabled.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
In git commit 68d8ef4ec540682c3538d4963e836e43a211dd17.
- 2.
References
Allen, F.E.: Control flow analysis. In: Proceedings of a Symposium on Compiler Optimization. pp. 1–19. ACM, New York, NY, USA (1970). https://doi.org/10.1145/800028.808479
ARM Ltd.: Fast Models User Guide
ARM Ltd.: Fast models (2019). https://developer.arm.com/products/system-design/fast-models
Bellard, F.: QEMU, a fast and portable dynamic translator. In: Proceedings of the Annual Conference on USENIX Annual Technical Conference (ATEC 2005), USENIX Association, Berkeley, CA, USA (2005)
Bringmann, O., et al.: The next generation of virtual prototyping: ultra-fast yet accurate simulation of hw/sw systems. In: 2015 Design, Automation Test in Europe Conference Exhibition (DATE), pp. 1698–1707 (March 2015). https://doi.org/10.7873/DATE.2015.1105
Burger, D., Austin, T.M.: The simplescalar tool set, version 2.0. SIGARCH Comput. Archit. News 25(3), 13–25 (1997). https://doi.org/10.1145/268806.268810
Delbergue, G., Burton, M., Konrad, F., Le Gal, B., Jego, C.: QBox: an industrial solution for virtual platform simulation using QEMU and SystemC TLM-2.0. In: 8th European Congress on Embedded Real Time Software and Systems (ERTS 2016). TOULOUSE, France (Jan 2016). https://hal.archives-ouvertes.fr/hal-01292317
Ding, J., Chang, P., Hsu, W., Chung, Y.: PQEMU: A parallel system emulator based on QEMU. In: 2011 IEEE 17th International Conference on Parallel and Distributed Systems, pp. 276–283 (Dec 2011). https://doi.org/10.1109/ICPADS.2011.102
Guo, X., Mullins, R.: Accelerate cycle-level full-system simulation of multi-core risc-v systems with binary translation (2020)
Herglotz, C., Seiler, J., Kaup, A., Hendricks, A., Reichenbach, M., Fey, D.: Estimation of non-functional properties for embedded hardware with application to image processing. In: 2015 IEEE International Parallel and Distributed Processing Symposium Workshop, pp. 190–195 (May 2015). https://doi.org/10.1109/IPDPSW.2015.58
IEEE Computer Society: IEEE Standard for Standard System C Language Reference Manual, pp. 1666–2011. IEEE Standard (2012)
Imperas: Open virtual platforms (2017). http://www.ovpworld.org/
Kang, S.H., Yoo, D., Ha, S.: TQSIM: A fast cycle-approximate processor simulator based on QEMU. J. Syst. Archit. 66, 33–47 (2016). https://doi.org/10.1016/j.sysarc.2016.04.012. http://www.sciencedirect.com/science/article/pii/S1383762116300297
Kerschbaumer, C., Hennigan, E., Larsen, P., Brunthaler, S., Franz, M.: Information flow tracking meets just-in-time compilation. ACM Trans. Archit. Code Optim. 10(4), 38-1–38-25 (2013). https://doi.org/10.1145/2555289.2555295
Lee, J., Jang, H., Kim, J.: Rpstacks: fast and accurate processor design space exploration using representative stall-event stacks. In: 2014 47th Annual IEEE/ACM International Symposium on Microarchitecture, pp. 255–267 (Dec 2014). https://doi.org/10.1109/MICRO.2014.26
Luo, Y., Li, Y., Yuan, X., Yin, R.: QSIM: framework for cycle-accurate simulation on out-of-order processors based on QEMU. In: 2012 Second International Conference on Instrumentation, Measurement, Computer, Communication and Control, pp. 1010–1015 (Dec 2012). https://doi.org/10.1109/IMCCC.2012.397
Miettinen, A., Hirvisalo, V., Knuuttila, J.: Execution-driven simulation of nonfunctional properties of software. In: Proceedings of European Simulation and Modelling Conference (ESM) (2010)
Monton, M., Portero, A., Moreno, M., Martinez, B., Carrabina, J.: Mixed sw/systemc soc emulation framework. In: 2007 IEEE International Symposium on Industrial Electronics, pp. 2338–2341 (June 2007). https://doi.org/10.1109/ISIE.2007.4374971
Rosa, F., Ost, L., Reis, R., Sassatelli, G.: Instruction-driven timing CPU model for efficient embedded software development using OVP. In: 2013 IEEE 20th International Conference on Electronics, Circuits, and Systems (ICECS), pp. 855–858 (Dec 2013). https://doi.org/10.1109/ICECS.2013.6815549
Sandberg, A., Nikoleris, N., Carlson, T.E., Hagersten, E., Kaxiras, S., Black-Schaffer, D.: Full speed ahead: detailed architectural simulation at near-native speed. In: 2015 IEEE International Symposium on Workload Characterization, pp. 183–192 (Oct 2015). https://doi.org/10.1109/IISWC.2015.29
Schreiner, S., Görgen, R., Grüttner, K., Nebel, W.: A quasi-cycle accurate timing model for binary translation based instruction set simulators. In: 2016 International Conference on Embedded Computer Systems: Architectures, Modeling and Simulation (SAMOS), pp. 348–353 (July 2016). https://doi.org/10.1109/SAMOS.2016.7818371
Weaver, V.M., McKee, S.A.: Are cycle accurate simulations a waste of time. In: Proceedings of 7th Workshop on Duplicating, Deconstructing, and Debunking, pp. 40–53 (2008)
Xilinx: LibSystemCTLM-SoC (2019). https://github.com/Xilinx/libsystemctlm-soc
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 ICST Institute for Computer Sciences, Social Informatics and Telecommunications Engineering
About this paper
Cite this paper
Rachuj, S., Fey, D., Reichenbach, M. (2021). Impact of Performance Estimation on Fast Processor Simulators. In: Song, H., Jiang, D. (eds) Simulation Tools and Techniques. SIMUtools 2020. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 370. Springer, Cham. https://doi.org/10.1007/978-3-030-72795-6_7
Download citation
DOI: https://doi.org/10.1007/978-3-030-72795-6_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-72794-9
Online ISBN: 978-3-030-72795-6
eBook Packages: Computer ScienceComputer Science (R0)