当前位置: X-MOL 学术IEEE Trans. Comput. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
KnightSim: A Fast Discrete Event-Driven Simulation Methodology For Computer Architectural Simulation
IEEE Transactions on Computers ( IF 3.7 ) Pub Date : 2020-01-01 , DOI: 10.1109/tc.2019.2938507
Christopher E. Giles , Christina L. Peterson , Mark A. Heinrich

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.89, 3.33, 5.84, and 9.24 for 2, 4, 8, and 16 threaded executions respectively.

中文翻译:

KnightSim:一种用于计算机建筑仿真的快速离散事件驱动仿真方法

在本文中,我们介绍了一种称为 KnightSim 的快速离散事件驱动仿真方法,旨在用于未来计算机架构仿真的开发。KnightSim 通过以下方式扩展了旧的事件驱动模拟库:(1) 对功能问题进行了更正,这些问题是最近在 Linux 软件堆栈中添加的堆栈保护、指针修改和源强化所引入的,(2) 对事件引擎进行了优化,以及 (3) 引入一种新颖的并行实现。KnightSim 将事件实现为独立可执行的 x86 “KnightSim 上下文”。KnightSim Contexts 包含一种用于快速上下文执行和自动建模占用和争用的机制,它很容易用于计算机架构模拟。我们通过详细的性能分析介绍了 KnightSim 和 Parallel KnightSim 的实现方法。我们的性能分析直接比较了 KnightSim、Parallel KnightSim 和三个不同主流计算机架构模拟器中的离散事件驱动模拟引擎。我们的结果表明,平均而言,KnightSim 比其他离散事件驱动的模拟引擎实现了 2.8 到 11.9 的加速。我们的结果还表明,对于 2、4、8 和 16 个线程执行,Parallel KnightSim 平均可以比 KnightSim 实现 1.89、3.33、5.84 和 9.24 的加速。以及在三种不同的主流计算机架构模拟器中发现的离散事件驱动模拟引擎。我们的结果表明,平均而言,KnightSim 比其他离散事件驱动的模拟引擎实现了 2.8 到 11.9 的加速。我们的结果还表明,对于 2、4、8 和 16 个线程执行,Parallel KnightSim 平均可以比 KnightSim 实现 1.89、3.33、5.84 和 9.24 的加速。以及在三种不同的主流计算机架构模拟器中发现的离散事件驱动模拟引擎。我们的结果表明,平均而言,KnightSim 比其他离散事件驱动的模拟引擎实现了 2.8 到 11.9 的加速。我们的结果还表明,对于 2、4、8 和 16 个线程执行,Parallel KnightSim 平均可以比 KnightSim 实现 1.89、3.33、5.84 和 9.24 的加速。
更新日期:2020-01-01
down
wechat
bug