A library for parallel thread-level speculation

In this paper we describe the design and implementation of a library (based on pthreads and C + +) to use explicit parallelism thread-level speculation. The library consists of several models proposed for speculation, guaranteeing sequential consistency: decision structures speculation (where the branches are executed in parallel to the previous section), loops speculation (where all iterations are run in parallel), critical sections speculation, and speculation by cooperating threads. The library was evaluated through case studies taken from SPEC CPU 2000, allowing acceleration of about 1.5 x for a multicore architecture (four cores) with coarse-grained multithreaded.

[1]  Ernst L. Leiss,et al.  Data dependent loop scheduling based on genetic algorithms for distributed and shared memory systems , 2004, J. Parallel Distributed Comput..

[2]  Wei-Chung Hsu,et al.  Dynamic helper threaded prefetching on the Sun UltraSPARC/spl reg/ CMP processor , 2005, 38th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'05).

[3]  Alan Mycroft,et al.  A lightweight in-place implementation for software thread-level speculation , 2009, SPAA '09.

[4]  Gavin Brown,et al.  Toward a more accurate understanding of the limits of the TLS execution paradigm , 2010, IEEE International Symposium on Workload Characterization (IISWC'10).

[5]  Marcelo H. Cintra,et al.  A compiler cost model for speculative parallelization , 2007, TACO.

[6]  Antonia Zhai,et al.  Exploring speculative parallelism in SPEC2006 , 2009, 2009 IEEE International Symposium on Performance Analysis of Systems and Software.

[7]  Rajiv Gupta,et al.  Copy or Discard execution model for speculative parallelization on multicores , 2008, 2008 41st IEEE/ACM International Symposium on Microarchitecture.

[8]  Antulio Morgado Valle Introducción a la computación paralela , 1994, Polytech. Open Libr. Int. Bull. Inf. Technol. Sci..

[9]  Milind Girkar,et al.  Tight analysis of the performance potential of thread speculation using spec CPU 2006 , 2007, PPOPP.

[10]  Oyekunle A. Olukotun,et al.  Parallel Programming Using Thread-Level Speculation , 2005 .

[11]  Theo Ungerer,et al.  A survey of processors with explicit multithreading , 2003, CSUR.

[12]  Mark D. Hill,et al.  Amdahl's Law in the Multicore Era , 2008 .