Implementation of dynamic synchronization for Slipstream Multiprocessors
No Thumbnail Available
Files
Date
2003-12-15
Authors
Advisors
Journal Title
Series/Report No.
Journal ISSN
Volume Title
Publisher
Abstract
The main goal of parallelization is speed up. As the number of processors increases, there is a little or no speedup, since a performance threshold is reached for a fixed problem size. This is because scalability for a parallel program is limited by the communication and synchronization overhead. Slipstream multiprocessor runs two redundant copies of the same program in a chip multiprocessor, where one program runs ahead of the other. The leading program is called the A-Stream and the trailing one is the R-Stream. The A-Stream, which runs ahead, is used to reduce overhead and improve the efficiency of execution rather than to increase concurrency. Prefetching of shared data by the A-Stream for the R-Stream helps the whole unit to speedup.
AR-Synchronization limits the movement of the leading program (A-Stream). The user can choose the type of synchronization desired at the beginning of program execution. A program might benefit if we vary the synchronization mode with different regions of code. This thesis proposes a technique to make the synchronization mode dynamic.
This thesis implements a method to check whether it is possible to change synchronization method dynamically. This method incurs some overhead which we avoid when we implement the sliding-window method to eliminate aggressive switching.
Using dynamic AR-Synchronization with the sliding- window approach results in a 7.9% improvement in execution time for the OCEAN benchmark, a 10% improvement for SOR, and a 0.2% improvement for MG.</i>
Description
Keywords
CMP, synchronization, multiprocessors, slipstream
Citation
Degree
MS
Discipline
Computer Engineering