Enhancing the performance of decoupled software pipeline through backward slicing

Esraa Alwan, John Fitch, Julian Padget

Research output: Contribution to journalArticlepeer-review

96 Downloads (Pure)


The rapidly increasing number of cores available in multicore processors does not necessarily lead directly to a commensurate increase in performance: programs written in conventional languages such as C, need careful restructuring, preferably automatically, before the benefits can be observed in improved run-times. Even then, much depends upon the intrinsic capacity of the original program for concurrent execution. The subject of this study is the performance gains from the combined effect of the complementary techniques of the Decoupled Software Pipeline (DSWP) and (backward) slicing. DSWP extracts thread level parallelism from the body of a loop by breaking it into stages which are then executed pipeline style: in effect cutting across the control chain. Slicing, on the other hand, cuts the program along the control chain, teasing out finer threads that depend on different variables (or locations). parts that depend on different variables. The main contribution of this paper is to demonstrate that the application of DSWP, followed by slicing offers notable improvements over DSWP alone, especially when there is a loop-carried dependence that prevents the application of the simpler DOALL optimization. Experimental results show an improvement of a factor of ~1.6 for DSWP +slicing over DSWP alone and a factor of ~2.4 for DSWP + slicing over the original sequential code.

Original languageEnglish
Pages (from-to)900-909
Number of pages10
JournalResearch Journal of Applied Sciences
Issue number10
Publication statusPublished - 2016


  • Automatic restmcturing
  • Decoupled software pipeline
  • Multicore
  • Slicing
  • Thread-level parallelism


Dive into the research topics of 'Enhancing the performance of decoupled software pipeline through backward slicing'. Together they form a unique fingerprint.

Cite this