Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
DoublePlay: parallelizing sequential logging and replay
Veeraraghavan K., Lee D., Wester B., Ouyang J., Chen P., Flinn J., Narayanasamy S. ACM Transactions on Computer Systems30 (1):1-24,2012.Type:Article
Date Reviewed: May 29 2012

There are some computer fields, like computer forensics and security analysis, that require the replaying of interesting operational sequences. On uniprocessor systems, this is not a problem. Critical events are logged and can then be replayed as needed. But what do you do on contemporary multiprocessor systems running distributed parallel applications? The standard logging approach requires single-threaded log entries, which turns multiprocessing back into uniprocessing, defeating the performance advantages of multiprocessing. The few record-and-replay solutions that have been created for parallel processing systems thus have prohibitive performance penalties as a result of such sequentialization.

The DoublePlay solution presented in this paper minimizes sequentialization and is now the most efficient deterministic replay solution for multiprocessors. Overhead ranges from 20 to 100 percent, as opposed to other solutions that run as high as 1100 percent. This innovation can make record-and-replay practical for many parallel applications.

Overall execution is subdivided into time slices called epochs, which are bounded by critical events. The 2D matrix created by epochs and processors is then swapped, exchanging columns for rows. This translation re-orders the epoch/processor segments so that they can be sequenced in parallel, but deterministically, preserving the order of critical events. The application is rerun following this reordered execution sequence, putting the “double” in DoublePlay. The replay log is created by this reordered run, and a deterministic sequence is then available for future replays.

I found the subject matter to be complex, and the paper is relatively long at 24 pages. However, the writing, style, and presentation of the paper was excellent and made for easy reading. The paper itself did not get in the way, which happens all too frequently, even with simple subjects.

As an apparent breakthrough in its field, this paper should interest anyone researching or developing deterministic replay systems. It may have broader application, though, in operating system design, fault tolerance, or even computer forensics.

Reviewer:  Bayard Kohlhepp Review #: CR140200 (1210-1048)
Bookmark and Share
  Featured Reviewer  
 
Organization And Design (D.4.7 )
 
 
Performance (D.4.8 )
 
Would you recommend this review?
yes
no
Other reviews under "Organization And Design": Date
Implicit system specification and the interface equation
Shields M. The Computer Journal 32(5): 399-412, 1989. Type: Article
Nov 1 1990
Disco: running commodity operating systems on scalable multiprocessors
Bugnion E., Devine S., Govil K., Rosenblum M. ACM Transactions on Computer Systems 15(4): 412-447, 1997. Type: Article
Sep 1 1998
Operating system support for persistent and recoverable computations
Rosenberg J., Dearle A., Hulse D., Lindström A., Norris S. Communications of the ACM 39(9): 62-69, 1996. Type: Article
Mar 1 1997
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