Title :
Parallelizing while loops for multiprocessor systems
Author :
Rauchwerger, Lawrence ; Padua, David
Author_Institution :
Illinois Univ., Urbana, IL, USA
Abstract :
Current parallelizing compilers treat while loops and do loops with conditional exits as sequential constructs because their iteration space is unknown. Because these types of loops arise frequently in practice, we have developed techniques that can automatically transform them for parallel execution. We succeed in parallelizing loops involving linked lists traversals-something that has not been done before. This is an important problem since linked list traversals arise frequently in loops with irregular access patterns, such as sparse matrix computations. The methods can even be applied to loops whose data dependence relations cannot be analyzed at compile-time. Experimental results on loops from the PERFECT Benchmarks and sparse matrix packages show that these techniques can yield significant speedups
Keywords :
multiprocessing systems; parallelising compilers; program compilers; conditional exits; data dependence relations; do loops; iteration space; linked lists; multiprocessor systems; parallelizing compilers; parallelizing while loops; sequential constructs; sparse matrix computations; sparse matrix packages; Contracts; Multiprocessing systems; NASA; Parallel algorithms; Performance evaluation; Postal services;
Conference_Titel :
Parallel Processing Symposium, 1995. Proceedings., 9th International
Conference_Location :
Santa Barbara, CA
Print_ISBN :
0-8186-7074-6
DOI :
10.1109/IPPS.1995.395955