A Fast Discrete Event Driven Simulation Methodology for Computer Architectural Simulation

In this paper we introduce a fast discrete event driven simulation methodology, called KnightSim, that is intended for use in the development of future computer architectural simulations. KnightSim extends an older event driven simulation library by (1) incorporating corrections to functional issues...

Full description

Saved in:
Bibliographic Details
Published in2018 IEEE 20th International Conference on High Performance Computing and Communications; IEEE 16th International Conference on Smart City; IEEE 4th International Conference on Data Science and Systems (HPCC/SmartCity/DSS) pp. 510 - 517
Main Authors Giles, Christopher, Peterson, Christina, Heinrich, Mark
Format Conference Proceeding
LanguageEnglish
Published IEEE 01.06.2018
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:In this paper we introduce a fast discrete event driven simulation methodology, called KnightSim, that is intended for use in the development of future computer architectural simulations. KnightSim extends an older event driven simulation library by (1) incorporating corrections to functional issues that were introduced by the recent additions of stack protection, pointer mangling, and source fortification in the Linux software stack, (2) incorporating optimizations to the event engine, and (3) introducing a novel parallel implementation. KnightSim implements events as independently executable x86 "KnightSim Contexts". KnightSim Contexts comprise a mechanism for fast context execution and automatically model occupancy and contention, which readily lends itself to use in computer architectural simulations. We present the implementation methodologies of KnightSim and Parallel KnightSim with a detailed performance analysis. Our performance analysis makes direct comparisons between KnightSim, Parallel KnightSim, and the discrete event driven simulation engines found in three different mainstream computer architectural simulators. Our results show that on average KnightSim achieves speedups of 2.8 to 11.9 over the other discrete event driven simulation engines. Our results also show that on average Parallel KnightSim can achieve speedups over KnightSim of 1.78, 3.30, 5.84, and 9.16 for 2, 4, 8, and 16 threaded executions respectively.
DOI:10.1109/HPCC/SmartCity/DSS.2018.00098