Boosting instruction set simulator performance with parallel block optimisation and replacement
Files
(Restricted Access)
Date
2012
Authors
Alexander, B.
Donnellan, S.
Jeffries, A.
Olds, T.
Sizer, N.
Editors
Advisors
Journal Title
Journal ISSN
Volume Title
Type:
Conference paper
Citation
Proceedings of the 35th Australasian Computer Science Conference, held in Melbourne, January 2012: pp.11-20
Statement of Responsibility
Brad Alexander, Sean Donnellan, Andrew Jeffries, Travis Olds and Nicholas Sizer
Conference Name
Australasian Computer Science Conference (35th : 2012 : Melbourne)
Abstract
Time-to-market is a critical factor in the commercial success of new consumer devices. To minimise delays, system developers and third party software vendors must be able to test their applications before the hardware platform becomes available. Instruction Set Simulators (ISS's) underpin this early development by emulating new platforms on ordinary desktop machines. As target platforms become faster the performance demands on ISS's become greater. A key challenge is to leverage available simulator technology to produce, at low cost, incremental performance gains needed to keep up with these demands. In this work we use a very simple strategy: in-place-blockreplacement to produce improvements in the performance of the popular QEMU functional simulator. The replacement blocks are generated at runtime using the LLVM JIT running on spare processor cores. This strategy provides a very lightweight way to incrementally build an alternate code generator within an existing ISS framework without incurring a substantial runtime cost. We show the approach is e_ective in reducing the runtimes of the QEMU user-space emulator on a number of SPECint 2006 benchmarks. Keywords: Instruction Set Simulation, Dynamic Bi- nary Translation, Background Optimisation, LLVM, QEMU.
School/Discipline
Dissertation Note
Provenance
Description
Access Status
Rights
Copyright © 2012, Australian Computer Society, Inc.