Handle URI:
http://hdl.handle.net/10754/599556
Title:
Scalable conditional induction variables (CIV) analysis
Authors:
Oancea, Cosmin E.; Rauchwerger, Lawrence
Abstract:
Subscripts using induction variables that cannot be expressed as a formula in terms of the enclosing-loop indices appear in the low-level implementation of common programming abstractions such as Alter, or stack operations and pose significant challenges to automatic parallelization. Because the complexity of such induction variables is often due to their conditional evaluation across the iteration space of loops we name them Conditional Induction Variables (CIV). This paper presents a flow-sensitive technique that summarizes both such CIV-based and affine subscripts to program level, using the same representation. Our technique requires no modifications of our dependence tests, which is agnostic to the original shape of the subscripts, and is more powerful than previously reported dependence tests that rely on the pairwise disambiguation of read-write references. We have implemented the CIV analysis in our parallelizing compiler and evaluated its impact on five Fortran benchmarks. We have found that that there are many important loops using CIV subscripts and that our analysis can lead to their scalable parallelization. This in turn has led to the parallelization of the benchmark programs they appear in.
Citation:
Oancea CE, Rauchwerger L (2015) Scalable conditional induction variables (CIV) analysis. 2015 IEEE/ACM International Symposium on Code Generation and Optimization (CGO). Available: http://dx.doi.org/10.1109/CGO.2015.7054201.
Publisher:
Institute of Electrical and Electronics Engineers (IEEE)
Journal:
2015 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)
KAUST Grant Number:
KUS-C1-016-04
Issue Date:
Feb-2015
DOI:
10.1109/CGO.2015.7054201
Type:
Conference Paper
Sponsors:
This work was supported in part by the Danish Councilfor Strategic Research under contract number 10-092299(HIPERFIT), and by NSF awards CCF 0702765, CNS-0551685, CCF-0833199, CCF-1439145, CCF-1423111, CCF-0830753, IIS-0917266, by DOE awards DE-AC02-06CH11357,DE-NA0002376, B575363, by Samsung, IBM, Intel, and byAward KUS-C1-016-04, made by King Abdullah Universityof Science and Technology (KAUST).
Appears in Collections:
Publications Acknowledging KAUST Support

Full metadata record

DC FieldValue Language
dc.contributor.authorOancea, Cosmin E.en
dc.contributor.authorRauchwerger, Lawrenceen
dc.date.accessioned2016-02-28T05:53:18Zen
dc.date.available2016-02-28T05:53:18Zen
dc.date.issued2015-02en
dc.identifier.citationOancea CE, Rauchwerger L (2015) Scalable conditional induction variables (CIV) analysis. 2015 IEEE/ACM International Symposium on Code Generation and Optimization (CGO). Available: http://dx.doi.org/10.1109/CGO.2015.7054201.en
dc.identifier.doi10.1109/CGO.2015.7054201en
dc.identifier.urihttp://hdl.handle.net/10754/599556en
dc.description.abstractSubscripts using induction variables that cannot be expressed as a formula in terms of the enclosing-loop indices appear in the low-level implementation of common programming abstractions such as Alter, or stack operations and pose significant challenges to automatic parallelization. Because the complexity of such induction variables is often due to their conditional evaluation across the iteration space of loops we name them Conditional Induction Variables (CIV). This paper presents a flow-sensitive technique that summarizes both such CIV-based and affine subscripts to program level, using the same representation. Our technique requires no modifications of our dependence tests, which is agnostic to the original shape of the subscripts, and is more powerful than previously reported dependence tests that rely on the pairwise disambiguation of read-write references. We have implemented the CIV analysis in our parallelizing compiler and evaluated its impact on five Fortran benchmarks. We have found that that there are many important loops using CIV subscripts and that our analysis can lead to their scalable parallelization. This in turn has led to the parallelization of the benchmark programs they appear in.en
dc.description.sponsorshipThis work was supported in part by the Danish Councilfor Strategic Research under contract number 10-092299(HIPERFIT), and by NSF awards CCF 0702765, CNS-0551685, CCF-0833199, CCF-1439145, CCF-1423111, CCF-0830753, IIS-0917266, by DOE awards DE-AC02-06CH11357,DE-NA0002376, B575363, by Samsung, IBM, Intel, and byAward KUS-C1-016-04, made by King Abdullah Universityof Science and Technology (KAUST).en
dc.publisherInstitute of Electrical and Electronics Engineers (IEEE)en
dc.titleScalable conditional induction variables (CIV) analysisen
dc.typeConference Paperen
dc.identifier.journal2015 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)en
dc.contributor.institutionDepartment of Computer Science, University of Copenhagenen
dc.contributor.institutionDepartment of Computer Science and Engineering, Texas A & M Universityen
kaust.grant.numberKUS-C1-016-04en
All Items in KAUST are protected by copyright, with all rights reserved, unless otherwise indicated.