Decoupled software pipelining creates parallelization opportunities

Jialu Huang, Arun Raman, Thomas B. Jablin, Yun Zhang, Tzu Han Hung, David I. August

Research output: Chapter in Book/Report/Conference proceedingConference contribution

46 Scopus citations

Abstract

Decoupled Software Pipelining (DSWP) is one approach to automatically extract threads from loops. It partitions loops into long-running threads that communicate in a pipelined manner via inter-core queues. This work recognizes that DSWP can also be an enabling transformation for other loop parallelization techniques. This use of DSWP, called DSWP+, splits a loop into new loops with dependence patterns amenable to parallelization using techniques that were originally either inapplicable or poorly-performing. By parallelizing each stage of the DSWP+ pipeline using (potentially) different techniques, not only is the benefit of DSWP increased, but the applicability and performance of other parallelization techniques are enhanced. This paper evaluates DSWP+ as an enabling framework for other transformations by applying it in conjunction with DOALL, LOCALWRITE, and SpecDOALL to individual stages of the pipeline. This paper demonstrates significant performance gains on a commodity 8-core multicore machine running a variety of codes transformed with DSWP+.

Original languageEnglish (US)
Title of host publicationProceedings of the 2010 CGO - The 8th International Symposium on Code Generation and Optimization
Pages121-130
Number of pages10
DOIs
StatePublished - 2010
Event8th International Symposium on Code Generation and Optimization, CGO 2010 - Toronto, ON, Canada
Duration: Apr 24 2010Apr 28 2010

Publication series

NameProceedings of the 2010 CGO - The 8th International Symposium on Code Generation and Optimization

Other

Other8th International Symposium on Code Generation and Optimization, CGO 2010
CountryCanada
CityToronto, ON
Period4/24/104/28/10

All Science Journal Classification (ASJC) codes

  • Computational Theory and Mathematics
  • Theoretical Computer Science

Keywords

  • DSWP
  • enabling transformation
  • multicore
  • parallelization
  • speculation

Fingerprint Dive into the research topics of 'Decoupled software pipelining creates parallelization opportunities'. Together they form a unique fingerprint.

  • Cite this

    Huang, J., Raman, A., Jablin, T. B., Zhang, Y., Hung, T. H., & August, D. I. (2010). Decoupled software pipelining creates parallelization opportunities. In Proceedings of the 2010 CGO - The 8th International Symposium on Code Generation and Optimization (pp. 121-130). (Proceedings of the 2010 CGO - The 8th International Symposium on Code Generation and Optimization). https://doi.org/10.1145/1772954.1772973