skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Exploiting Vector and Multicore Parallelsim for Recursive, Data- and Task-Parallel Programs

Abstract

Modern hardware contains parallel execution resources that are well-suited for data-parallelism-vector units-and task parallelism-multicores. However, most work on parallel scheduling focuses on one type of hardware or the other. In this work, we present a scheduling framework that allows for a unified treatment of task- and data-parallelism. Our key insight is an abstraction, task blocks, that uniformly handles data-parallel iterations and task-parallel tasks, allowing them to be scheduled on vector units or executed independently as multicores. Our framework allows us to define schedulers that can dynamically select between executing task- blocks on vector units or multicores. We show that these schedulers are asymptotically optimal, and deliver the maximum amount of parallelism available in computation trees. To evaluate our schedulers, we develop program transformations that can convert mixed data- and task-parallel pro- grams into task block-based programs. Using a prototype instantiation of our scheduling framework, we show that, on an 8-core system, we can simultaneously exploit vector and multicore parallelism to achieve 14×-108× speedup over sequential baselines.

Authors:
; ; ;
Publication Date:
Research Org.:
Pacific Northwest National Lab. (PNNL), Richland, WA (United States)
Sponsoring Org.:
USDOE
OSTI Identifier:
1349171
Report Number(s):
PNNL-SA-124366
KJ0402000
DOE Contract Number:  
AC05-76RL01830
Resource Type:
Conference
Resource Relation:
Conference: Proceedings of the 22nd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PRoPP 2017), February 4-8, 2017, Austin, Texas, 117-130
Country of Publication:
United States
Language:
English

Citation Formats

Ren, Bin, Krishnamoorthy, Sriram, Agrawal, Kunal, and Kulkarni, Milind. Exploiting Vector and Multicore Parallelsim for Recursive, Data- and Task-Parallel Programs. United States: N. p., 2017. Web. doi:10.1145/3018743.3018763.
Ren, Bin, Krishnamoorthy, Sriram, Agrawal, Kunal, & Kulkarni, Milind. Exploiting Vector and Multicore Parallelsim for Recursive, Data- and Task-Parallel Programs. United States. doi:10.1145/3018743.3018763.
Ren, Bin, Krishnamoorthy, Sriram, Agrawal, Kunal, and Kulkarni, Milind. Thu . "Exploiting Vector and Multicore Parallelsim for Recursive, Data- and Task-Parallel Programs". United States. doi:10.1145/3018743.3018763.
@article{osti_1349171,
title = {Exploiting Vector and Multicore Parallelsim for Recursive, Data- and Task-Parallel Programs},
author = {Ren, Bin and Krishnamoorthy, Sriram and Agrawal, Kunal and Kulkarni, Milind},
abstractNote = {Modern hardware contains parallel execution resources that are well-suited for data-parallelism-vector units-and task parallelism-multicores. However, most work on parallel scheduling focuses on one type of hardware or the other. In this work, we present a scheduling framework that allows for a unified treatment of task- and data-parallelism. Our key insight is an abstraction, task blocks, that uniformly handles data-parallel iterations and task-parallel tasks, allowing them to be scheduled on vector units or executed independently as multicores. Our framework allows us to define schedulers that can dynamically select between executing task- blocks on vector units or multicores. We show that these schedulers are asymptotically optimal, and deliver the maximum amount of parallelism available in computation trees. To evaluate our schedulers, we develop program transformations that can convert mixed data- and task-parallel pro- grams into task block-based programs. Using a prototype instantiation of our scheduling framework, we show that, on an 8-core system, we can simultaneously exploit vector and multicore parallelism to achieve 14×-108× speedup over sequential baselines.},
doi = {10.1145/3018743.3018763},
journal = {},
number = ,
volume = ,
place = {United States},
year = {Thu Jan 26 00:00:00 EST 2017},
month = {Thu Jan 26 00:00:00 EST 2017}
}

Conference:
Other availability
Please see Document Availability for additional information on obtaining the full-text document. Library patrons may search WorldCat to identify libraries that hold this conference proceeding.

Save / Share: