Dependence-based code transformation for coarse-grained parallelism

Bo Zhao, Zhen Li, Ali Jannesari, Felix Wolf, Weiguo Wu

Research output: Chapter in Book/Report/Conference proceedingConference article in proceedingsScientificpeer-review

7 Citations (Scopus)

Abstract

Multicore architectures are becoming more common today. Many software products implemented sequentially have failed to exploit the potential parallelism of multicore architectures. Significant re-engineering and refactoring of existing software is needed to support the use of new hardware features. Due to the high cost of manual transformation, an automated approach to transforming existing software and taking advantage of multicore architectures would be highly beneficial. We propose a novel auto-parallelization approach, which integrates data-dependence profiling, task parallelism extraction and source-to-source transformation. Coarse-grained task parallelism is detected based on a concept called Computational Unit(CU). We use dynamic profiling information to gather control- and data-dependences among tasks and generate a task graph. In addition, we develop a source-to-source transformation tool based on LLVM, which can perform high-level code restructuring. It transforms the generated task graph with loop parallelism and task parallelism of sequential code into parallel code using Intel Threading Building Blocks (TBB). We have evaluated NAS Parallel Benchmark applications, three applications from PARSEC benchmark suite, and real world applications. The obtained results confirm that our approach is able to achieve promising performance with minor user interference. The average speedups of loop parallelization and task parallelization are 3.12x and 9.92x respectively.

Original languageEnglish
Title of host publicationProceedings of the 2nd International Workshop on Code OptimiSation for MultI and Many Cores, COSMIC 2015 - Held in conjunction with the International Symposium on Code Generation and Optimization,CGO 2015
PublisherACM
ISBN (Electronic)9781450333160
DOIs
Publication statusPublished - 8 Feb 2015
MoE publication typeA4 Conference publication
EventInternational Workshop on Code Optimisation for Multi and Many Cores - San Francisco, United States
Duration: 8 Feb 20158 Feb 2015
Conference number: 2

Workshop

WorkshopInternational Workshop on Code Optimisation for Multi and Many Cores
Abbreviated titleCOSMIC
Country/TerritoryUnited States
CitySan Francisco
Period08/02/201508/02/2015

Keywords

  • Coarse-grained parallelism
  • Code transformation
  • Data dependence analysis
  • Source-to-source
  • TBB

Fingerprint

Dive into the research topics of 'Dependence-based code transformation for coarse-grained parallelism'. Together they form a unique fingerprint.

Cite this