A Parallel Full-System Emulator for Risc Architure Host

In this paper, we port a parallel full-system emulator to RISC host to achieve higher performance by utilize all the multi-core resources from physical CPU, in contrast the traditional full-system emulator is sequentially in SMP emulation and can only use one core of host machine. We mainly deal with the atomic instruction translation to RISC ll/sc pairs, and apply lightweight lock-free FIFO queue algorithms using both interleaving and non-interleaving ll/sc pairs. The tests show that the performance of parallel full-system emulator have high efficiency.

[1]  Keir Fraser,et al.  A Practical Multi-word Compare-and-Swap Operation , 2002, DISC.

[2]  Fabrice Bellard,et al.  QEMU, a Fast and Portable Dynamic Translator , 2005, USENIX Annual Technical Conference, FREENIX Track.

[3]  Yeh-Ching Chung,et al.  PQEMU: A Parallel System Emulator Based on QEMU , 2011, 2011 IEEE 17th International Conference on Parallel and Distributed Systems.

[4]  Chien-Min Wang,et al.  HQEMU: a multi-threaded and retargetable dynamic binary translator on multicores , 2012, CGO '12.

[5]  Bjarne Stroustrup,et al.  Understanding and Effectively Preventing the ABA Problem in Descriptor-Based Lock-Free Designs , 2010, 2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing.

[6]  Claude Evéquoz Non-Blocking Concurrent FIFO Queues with Single Word Synchronization Primitives , 2008, 2008 37th International Conference on Parallel Processing.

[7]  Haibo Chen,et al.  COREMU: a scalable and portable parallel full-system emulator , 2011, PPoPP '11.