DocumentCode
2679397
Title
Cooperative parallelization
Author
Yedlapalli, Praveen ; Kultursay, Emre ; Kandemir, Mahmut T.
Author_Institution
Pennsylvania State Univ., University Park, PA, USA
fYear
2011
fDate
7-10 Nov. 2011
Firstpage
134
Lastpage
141
Abstract
We propose a cooperation between the programmer, the compiler and the runtime system to identify, exploit and efficiently exercise the parallelism available in many pointer based applications. Our parallelization strategy, called Cooperative Parallelization, is driven by programmer directives as well as runtime information. We show that minimal information from the programmer can be combined with runtime information to extract latent parallelism in many pointer intensive applications that involve trees and linked lists. We implemented a compilation framework which automatically parallelizes programs annotated with parallelism directives. We evaluated our approach on a collection of linked list and tree based applications. Our results show that we can achieve speedups of up to 15× on a sixteen-core platform. We also compared our approach to OpenMP both qualitatively and quantitatively.
Keywords
multiprocessing systems; parallel programming; program compilers; trees (mathematics); OpenMP; compilation framework; compiler; cooperative parallelization; linked lists; pointer intensive applications; program parallelization; programmer; runtime information; runtime system; sixteen-core platform; tree based applications; Context; Data structures; Instruction sets; Parallel processing; Runtime; Vegetation;
fLanguage
English
Publisher
ieee
Conference_Titel
Computer-Aided Design (ICCAD), 2011 IEEE/ACM International Conference on
Conference_Location
San Jose, CA
ISSN
1092-3152
Print_ISBN
978-1-4577-1399-6
Electronic_ISBN
1092-3152
Type
conf
DOI
10.1109/ICCAD.2011.6105317
Filename
6105317
Link To Document