Access the full text.
Sign up today, get DeepDyve free for 14 days.
W. Blume, R. Doallo, R. Eigenmann, John Grout, J. Hoeflinger, T. Lawrence, Jaejin Lee, D. Padua, Y. Paek, W. Pottenger, Lawrence Rauchwerger, P. Tu (1996)
Parallel Programming with PolarisComputer, 29
(2005)
ACM Transactions on Programming Languages and Systems
Chong-liang Ooi, S. Kim, Il Park, R. Eigenmann, B. Falsafi, T. Vijaykumar (2001)
Multiplex: unifying conventional and speculative thread-level parallelism on a chip multiprocessor
P. Tu, D. Padua (1993)
Automatic Array Privatization
Lance Hammond, M. Willey, K. Olukotun (1998)
Data speculation support for a chip multiprocessor
Manish Gupta, Rahul Nim (1998)
Techniques for Speculative Run-Time Parallelization of LoopsProceedings of the IEEE/ACM SC98 Conference
Ye Zhang, Lawrence Rauchwerger, J. Torrellas (1999)
Hardware for speculative parallelization of partially-parallel loops in DSM multiprocessorsProceedings Fifth International Symposium on High-Performance Computer Architecture
Mary Hall, Jennifer Anderson, Saman Amarasinghe, Brian Murphy, Shih-Wei Liao, Edouard Bugnion, M. Lam (1996)
Maximizing Multiprocessor Performance with the SUIF CompilerDigit. Tech. J., 10
S. Gopal, T. Vijaykumar, James Smith, G. Sohi, Computer Sciences (1998)
Speculative versioning cacheProceedings 1998 Fourth International Symposium on High-Performance Computer Architecture
U. Banerjee (1988)
Dependence analysis for supercomputing, 60
G. Sohi, S. Breach, T. Vijaykumar (1995)
Multiscalar processorsProceedings 22nd Annual International Symposium on Computer Architecture
Lawrence Rauchwerger (1995)
Speculative run-time parallelization of loops with privatization and reduction parallelizationIEEE Transactions on Parallel and Distributed Systems
(1999)
MAJC architecture tutorial
J. Gregory, Steffan Steffan, Christopher B, Christopher Colohan, Antonia Antonia, Zhai Zhai, Todd C, T. Mowry (2000)
A scalable approach to thread-level speculationProceedings of 27th International Symposium on Computer Architecture (IEEE Cat. No.RS00201)
T. Vijaykumar, G. Sohi (1998)
Task selection for a multiscalar processorProceedings. 31st Annual ACM/IEEE International Symposium on Microarchitecture
Recent proposals for multithreaded architectures employ speculative execution to allow threads with unknown dependences to execute speculatively in parallel. The architectures use hardware speculative storage to buffer speculative data, track data dependences and correct incorrect executions through roll-backs. Because all memory references access the speculative storage, current proposals implement speculative storage using small memory structures to achieve fast access. The limited capacity of the speculative storage causes considerable performance loss due to speculative storage overflow whenever a thread's speculative state exceeds the speculative storage capacity. Larger threads exacerbate the overflow problem but are preferable to smaller threads, as larger threads uncover more parallelism.In this article, we discover a new program property called memory reference idempotency . Idempotent references are guaranteed to be eventually corrected, though the references may be temporarily incorrect in the process of speculation. Therefore, idempotent references, even from nonparallelizable program sections, need not be tracked in the speculative storage, and instead can directly access nonspeculative storage (i.e., conventional memory hierarchy). Thus, we reduce the demand for speculative storage space in large threads. We define a formal framework for reference idempotency and present a novel compiler-assisted speculative execution model. We prove the necessary and sufficient conditions for reference idempotency using our model. We present a compiler algorithm to label idempotent memory references for the hardware. Experimental results show that for our benchmarks, over 60% of the references in nonparallelizable program sections are idempotent.
ACM Transactions on Programming Languages and Systems (TOPLAS) – Association for Computing Machinery
Published: Sep 1, 2006
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.