Affiliation:
1. University of California, San Diego
2. Intel Corporation
Abstract
Modern architecture research relies heavily on application-level detailed pipeline simulation. A time consuming part of building a simulator is correctly emulating the operating system effects, which is required even if the goal is to simulate just the application code, in order to achieve functional correctness of the application's execution. Existing application-level simulators require manually hand coding the emulation of each and every possible system effect (e.g., system call, interrupt, DMA transfer) that can impact the application's execution. Developing such an emulator for a given operating system is a tedious exercise, and it can also be costly to maintain it to support newer versions of that operating system. Furthermore, porting the emulator to a completely different operating system might involve building it all together from scratch.In this paper, we describe a tool that can automatically log operating system effects to guide architecture simulation of application code. The benefits of our approach are: (a) we do not have to build or maintain any infrastructure for emulating the operating system effects, (b) we can support simulation of more complex applications on our application-level simulator, including those applications that use asynchronous interrupts, DMA transfers, etc., and (c) using the system effects logs collected by our tool, we can deterministically re-execute the application to guide architecture simulation that has reproducible results.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Networks and Communications,Hardware and Architecture,Software
Cited by
13 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. ELFies: Executable Region Checkpoints for Performance Analysis and Simulation;2021 IEEE/ACM International Symposium on Code Generation and Optimization (CGO);2021-02-27
2. A Survey of Cache Simulators;ACM Computing Surveys;2021-01-31
3. Selective Symbolic Type-Guided Checkpointing and Restoration for Autonomous Vehicle Repair;Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops;2020-06-27
4. Using Local Clocks to Reproduce Concurrency Bugs;IEEE Transactions on Software Engineering;2018-11-01
5. PEMU;ACM SIGPLAN Notices;2015-08-25