Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
QuickRec: prototyping an intel architecture extension for record and replay of multithreaded programs
Pokam G., Danne K., Pereira C., Kassa R., Kranich T., Hu S., Gottschlich J., Honarmand N., Dautenhahn N., King S., Torrellas J.  ISCA 2013 (Proceedings of the 40th Annual International Symposium on Computer Architecture, Tel-Aviv, Israel, Jun 23-27, 2013)643-654.2013.Type:Proceedings
Date Reviewed: Aug 9 2013

This paper describes QuickRec, a field-programmable gate array (FPGA) implementation of hardware-assisted record replay (RnR) for an x86 processor. Record replay allows the recording of the execution of a multithreaded application, capturing all sources of nondeterminism, including input, nondeterministic instructions such as those that read the processor timestamp counter, and the interleaving of racing accesses to memory. This then allows replay of the execution, providing complete information about the execution to tools such as debuggers and race detectors, thereby enabling reasoning about it.

There has been significant prior work in this area, and the key contribution with QuickRec is a fully working prototype on FPGAs of previous work called Capo, which was originally evaluated on a simulator. The resulting full system (Capo3) consists of a modified Linux kernel supporting record replay, an FPGA prototype of four Intel Pentium cores connected to memory, and modifications to the cores to support record replay. The primary components of the record replay system are bloom filters that record addresses of reads and writes to the level 1 cache and in-memory logs of input events such as data supplied by the operating system. On certain events that demand the enforcing of total order, such as an interleaving access from a different core, the bloom filters and input logs are written out to a totally ordered log as “chunks.”

Because this work resulted in the building of a real system, the paper provides a number of interesting insights of a practical nature. First, the overheads of record and replay are as low as 13 percent on average, suggesting that this feature is mature enough and useful enough to demand inclusion in future processors. This is backed up by the fact that memory bandwidth requirements for record and replay are as low as 0.3 percent in the emulated system. The authors also provide a number of practical suggestions for operating system support for RnR, including a careful exposition on how to instrument routines that copy data back to user space and how to handle page faults in those routines by means of extra hardware support, thereby connecting the dots between RnR hardware and operating system support for RnR.

This paper is a good read for researchers interested in the practical aspects of record and replay. However, it does assume knowledge of prior art in the area. In particular, a careful reading of the original Capo system paper [1] would greatly enhance the potential for learning from this paper.

Reviewer:  Amitabha Roy Review #: CR141451 (1310-0902)
1) Montesinos, P.; Hicks, M.; King, S.; Torrellas, J. Capo: a software-hardware interface for practical deterministic multiprocessor replay. In Proc. of ASPLOS XIV (March, 2009), ACM, 2009, 73–84. http://dx.doi.org/10.1145/1508244.1508254
Bookmark and Share
  Reviewer Selected
 
 
Multiple Data Stream Architectures (Multiprocessors) (C.1.2 )
 
 
Design Studies (C.4 ... )
 
 
Gate Arrays (B.7.1 ... )
 
 
Hardware/ Software Interfaces (C.0 ... )
 
 
Performance of Systems (C.4 )
 
Would you recommend this review?
yes
no
Other reviews under "Multiple Data Stream Architectures (Multiprocessors)": Date
Cache-coherent multiprocessors
Baskett F., University Video Communications, Stanford, CA, 1991. Type: Book
Feb 1 1994
Multiple processor systems for real-time applications
Liebowitz B., Carson J., Prentice-Hall, Inc., Upper Saddle River, NJ, 1985. Type: Book (9789780136051145)
Jan 1 1986
Multicomputer networks: message-based parallel processing
Reed D., Fujimoto R., MIT Press, Cambridge, MA, 1988. Type: Book (9789780262181297)
Apr 1 1989
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy