Exploitation of GPUs for the Parallelisation of Probably Parallel Legacy Code

Zheng Wang, Daniel Powell, Björn Franke, Michael O'Boyle

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

Abstract / Description of output

General purpose Gpus provide massive compute power, but are notoriously difficult to program. In this paper we present a complete compilation strategy to exploit Gpus for the parallelisation of sequential legacy code. Using hybrid data dependence analysis combining static and dynamic information, our compiler automatically detects suitable parallelism and generates parallel OpenCl code from sequential programs. We exploit the fact that dependence profiling provides us with parallel loop candidates that are highly likely to be genuinely parallel, but cannot be statically proven so. For the efficient Gpu parallelisation of those probably parallel loop candidates, we propose a novel software speculation scheme, which ensures correctness for the unlikely, yet possible case of dynamically detected dependence violations. Our scheme operates in place and supports speculative read and write operations. We demonstrate the effectiveness of our approach in detecting and exploiting parallelism using sequential codes from the Nas benchmark suite. We achieve an average speedup of 3.2x, and up to 99x, over the sequential baseline. On average, this is 1.42 times faster than state-of-the-art speculation schemes and corresponds to 99% of the performance level of a manual Gpu implementation developed by independent expert programmers.
Original languageEnglish
Title of host publicationCompiler Construction
Subtitle of host publication23rd International Conference, CC 2014, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2014, Grenoble, France, April 5-13, 2014. Proceedings
EditorsAlbert Cohen
PublisherSpringer Berlin Heidelberg
Number of pages20
ISBN (Electronic)978-3-642-54807-9
ISBN (Print)978-3-642-54806-2
Publication statusPublished - 2014

Publication series

NameLecture Notes in Computer Science
PublisherSpringer Berlin Heidelberg
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Keywords / Materials (for Non-textual outputs)

  • GPU
  • OpenCL
  • Parallelization
  • Thread Level Speculation


Dive into the research topics of 'Exploitation of GPUs for the Parallelisation of Probably Parallel Legacy Code'. Together they form a unique fingerprint.

Cite this