Title :
The potential for using thread-level data speculation to facilitate automatic parallelization
Author :
Steffan, J. Gregory ; Mowry, Todd C.
Author_Institution :
Dept. of Comput. Sci., Carnegie Mellon Univ., Pittsburgh, PA, USA
Abstract :
As we look to the future, and the prospect of a billion transistors on a chip, it seems inevitable that microprocessors will exploit having multiple parallel threads. To achieve the full potential of these “single-chip multiprocessors”, however, we must find a way to parallelize non-numeric applications. Unfortunately, compilers have had little success in parallelizing non-numeric codes due to their complex access patterns. This paper explores the potential for using thread-level data speculation (TLDS) to overcome this limitation by allowing the compiler to view parallelization solely as a cost/benefit tradeoff rather than something which is likely to violate program correctness. Our experimental results demonstrate that with realistic compiler support, TLDS can offer significant program speedups. We also demonstrate that through modest hardware extensions, a generic single-chip multiprocessor could support TLDS by augmenting its cache coherence scheme to detect dependence violations, and by using the primary data caches to buffer speculative state
Keywords :
microprocessor chips; parallelising compilers; automatic parallelization; buffer speculative state; cache coherence scheme; compilers; microprocessors; multiple parallel threads; thread-level data speculation; Application software; Computer science; Face detection; Hip; Integrated circuit technology; Microprocessors; Ores; Parallel processing; Transistors; Yarn;
Conference_Titel :
High-Performance Computer Architecture, 1998. Proceedings., 1998 Fourth International Symposium on
Conference_Location :
Las Vegas, NV
Print_ISBN :
0-8186-8323-6
DOI :
10.1109/HPCA.1998.650541