Title :
Cache-based cross-iteration coherence for speculative parallelization
Author :
Baixo, Andre ; Porto, Joao Paulo ; Araujo, Gabriel
Author_Institution :
Univ. of Washinghton, Seattle, WA, USA
Abstract :
Maximal utilization of cores in multicore architectures is key to realize the potential performance available from higher density devices. In order to achieve scalable performance, parallelization techniques rely on carefully tunning speculative architecture support, run-time environment and software-based transformations. Hardware and software mechanisms have already been proposed to address this problem. They either require deep (and risky) changes on the existing hardware and cache coherence protocols, or exhibit poor performance scalability for a range of applications. The addition of cache tags as an enabler for data versioning, recently announced by the industry (i.e. IBM BlueGene/Q), could allow a better exploitation of parallelism at the microarchitecture level. In this paper, we present an execution model that supports both DOPIPE-based speculation and traditional speculative parallelization techniques. It is based on a simple cache tagging approach for data versioning, which integrates smoothly with typical cache coherence protocols, not requiring any changes to them. Experimental results, using SPEC and PARSEC benchmarks, reveal substantial speedups in a 24-core simulated CMP, while demonstrate improved scalability when compared to a software-only approach.
Keywords :
cache storage; data handling; iterative methods; multiprocessing systems; parallel architectures; 24-core simulated CMP; DOPIPE-based speculation technique; IBM BlueGene/Q; PARSEC benchmark; SPEC benchmark; cache coherence protocol; cache tagging approach; cache-based cross-iteration coherence; data versioning; execution model; hardware mechanisms; maximal core utilization; microarchitecture level parallelism; multicore architecture; performance scalability; run-time environment; scalable performance; software mechanisms; software-based transformation; speculative architecture support; speculative parallelization technique; Degradation; Hardware; Multicore processing; Parallel processing; Scalability; Software;
Conference_Titel :
High Performance Computing (HiPC), 2013 20th International Conference on
Conference_Location :
Bangalore
DOI :
10.1109/HiPC.2013.6799113