|
| This Article | ||
| ||
| Share | ||
| Bibliographic References | ||
| Add to: | ||
| | ||
| Search | ||
2009 18th International Conference on Parallel Architectures and Compilation Techniques
Exploiting Parallelism with Dependence-Aware Scheduling
Raleigh, North Carolina, USA
September 12-September 16
ISBN: 978-0-7695-3771-9
| ASCII Text | x | ||
| "Exploiting Parallelism with Dependence-Aware Scheduling," Parallel Architectures and Compilation Techniques, International Conference on, pp. 193-202, 2009 18th International Conference on Parallel Architectures and Compilation Techniques, 2009. | |||
| BibTex | x | ||
| @article{ 10.1109/PACT.2009.10, author = {}, title = {Exploiting Parallelism with Dependence-Aware Scheduling}, journal ={Parallel Architectures and Compilation Techniques, International Conference on}, volume = {0}, year = {2009}, issn = {1089-795X}, pages = {193-202}, doi = {http://doi.ieeecomputersociety.org/10.1109/PACT.2009.10}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, } | |||
| RefWorks Procite/RefMan/Endnote | x | ||
| TY - CONF JO - Parallel Architectures and Compilation Techniques, International Conference on TI - Exploiting Parallelism with Dependence-Aware Scheduling SN - 1089-795X SP193 EP202 PY - 2009 KW - scheduling KW - parallelising compilers KW - software-based approach KW - dependence-aware scheduling KW - application parallelization KW - runtime data-dependence analysis KW - Parallel processing KW - Processor scheduling KW - Runtime KW - Data analysis KW - Performance analysis KW - Application software KW - Multicore processing KW - Computer applications KW - Stress KW - Testing KW - Thread Scheduling KW - Partial Parallelism KW - Runtime Dependence Analysis KW - Inspector/Executor KW - Multicore VL - 0 JA - Parallel Architectures and Compilation Techniques, International Conference on ER - | |||
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/PACT.2009.10
It is well known that a large fraction of applications cannot be parallelized at compile time due to unpredictable data dependences such as indirect memory accesses and/or memory accesses guarded by data-dependent conditional statements. A significant body of prior work attempts to parallelize such applications using runtime data-dependence analysis and scheduling. Performance is highly dependent on the ratio of the dependence analysis overheads with respect to the actual amount of parallelism available in the code. We have found that the overheads are often high and the available parallelism is often low when evaluating applications on a modern multicore processor. We propose a novel software-based approach called dependence-aware scheduling to parallelize loops with unknown data dependences. Unlike prior work, our main goal is to reduce the negative impact of dependence computation, such that when there is not an opportunity of getting speedup, the code can still run without much slowdown. If there is an opportunity, dependence-aware scheduling is able to yield very impressive speedup. Our results indicate that dependence-aware scheduling can greatly improve performance, with up to 4x speedups, for a number of computation intensive applications. Furthermore, the results also show negligible slowdowns in a stress test, where parallelism is continuously detected but not exploited.
Index Terms:
scheduling,parallelising compilers,software-based approach,dependence-aware scheduling,application parallelization,runtime data-dependence analysis,Parallel processing,Processor scheduling,Runtime,Data analysis,Performance analysis,Application software,Multicore processing,Computer applications,Stress,Testing,Thread Scheduling,Partial Parallelism,Runtime Dependence Analysis,Inspector/Executor,Multicore
Citation:
"Exploiting Parallelism with Dependence-Aware Scheduling," pact, pp.193-202, 2009 18th International Conference on Parallel Architectures and Compilation Techniques, 2009
Usage of this product signifies your acceptance of the Terms of Use.
