Speculative parallelization using software multi-threaded transactions

作者: Arun Raman , Hanjun Kim , Thomas R. Mason , Thomas B. Jablin , David I. August

DOI: 10.1145/1735971.1736030

关键词:

摘要: With the right techniques, multicore architectures may be able to continue exponential performance trend that elevated of applications all types for decades. While many scientific programs can parallelized without speculative parallelism appears key continuing this general-purpose applications. Recently-proposed code parallelization such as those by Bridges et al. and Thies al., demonstrate scalable on multiple cores using speculation divide into atomic units (transactions) span threads in order expose data parallelism. Unfortunately, most software hardware Thread-Level Speculation (TLS) memory systems transactional memories are not sufficient because they only support single-threaded units. Multi-threaded Transactions (MTXs) address problem, but require expensive currently proposed literature. This paper proposes a Software MTX (SMTX) system captures applicability MTX, existing machines. The SMTX yields harmonic mean speedup 13.36x native with four 6-core processors (24 total) running speculatively

参考文章(34)
Jim Larus, Ravi Rajwar, Transactional Memory (Synthesis Lectures on Computer Architecture) Morgan & Claypool Publishers. ,(2007)
Per Stenström, Peter Rundberg, An All-Software Thread-Level Data Dependence Speculation System for Multiprocessors Journal of Instruction-level Parallelism. ,vol. 3, ,(2002)
Easwaran Raman, David I. August, Parallelization techniques with improved dependence handling Princeton University. ,(2009)
Easwaran Raman, Neil Va hharajani, Ram Rangan, David I. August, Spice: speculative parallel iteration chunk execution symposium on code generation and optimization. pp. 175- 184 ,(2008) , 10.1145/1356058.1356082
Anasua Bhowmik, Manoj Franklin, A general compiler framework for speculative multithreading Proceedings of the fourteenth annual ACM symposium on Parallel algorithms and architectures - SPAA '02. pp. 99- 108 ,(2002) , 10.1145/564870.564885
J. Gregory Steffan, Christopher Colohan, Antonia Zhai, Todd C. Mowry, The STAMPede approach to thread-level speculation ACM Transactions on Computer Systems. ,vol. 23, pp. 253- 300 ,(2005) , 10.1145/1082469.1082471
Calin Cascaval, Colin Blundell, Maged Michael, Harold W. Cain, Peng Wu, Stefanie Chiras, Siddhartha Chatterjee, Software transactional memory: why is it only a research toy? Communications of The ACM. ,vol. 51, pp. 40- 46 ,(2008) , 10.1145/1400214.1400228
Ali-Reza Adl-Tabatabai, Brian T. Lewis, Vijay Menon, Brian R. Murphy, Bratin Saha, Tatiana Shpeisman, Compiler and runtime support for efficient software transactional memory ACM SIGPLAN Notices. ,vol. 41, pp. 26- 37 ,(2006) , 10.1145/1133255.1133985
Nir Shavit, Dan Touitou, Software transactional memory principles of distributed computing. pp. 204- 213 ,(1995) , 10.1145/224964.224987