Check out the new USENIX Web site. next up previous
Next: Detailed design Up: Design overview Previous: Approach 2

Putting it all together

Figure 4: High-level architecture
\begin{figure}\begin{center}
\epsfig{file=fig/hilevel.eps, scale=0.80}
\end{cent...
... replay, dummy data files are use in
place of the real data files.}
\end{figure}

Trace collection is an iterative process, requiring that an application be run multiple times, each time choosing a different node to throttle. Then, given a collection of traces (one trace for each of $n$ application threads), a distributed replayer ($n$ replay threads, one per trace) can replay the I/O, including any inter-I/O computation and synchronization, against dummy data files. Figure 4 illustrates this high-level architecture.



Michael Mesnier 2006-12-22