Understanding and Overcoming Parallelism Bottlenecks in ForkJoin Applications

by Gustavo Pinto, Anthony Canino, Fernando Castor, Guoqing Harry Xu, Yu David Liu

You can get a pre-print version from here.

You can view the publisher’s page here.

Bibtex record

@inproceedings{Pinto:2017:ASE,
 author = {Pinto, Gustavo and Canino, Anthony and Castor, Fernando and Xu, Guoqing and Liu, Yu David},
 title = {Understanding and Overcoming Parallelism Bottlenecks in ForkJoin Applications},
 booktitle = {Proceedings of the 32Nd IEEE/ACM International Conference on Automated Software Engineering},
 series = {ASE 2017},
 year = {2017},
 isbn = {978-1-5386-2684-9},
 location = {Urbana-Champaign, IL, USA},
 pages = {765--775},
 numpages = {11},
}

Number of rejections before acceptance: 1

Brief history: I started this paper probably in the last year of my PhD (2014). I found some juice that suggested that we could do refactorings to improve energy consumption; some energy gains were consistent when applying the refactorings. The challenge here was to find more cases that reinforced this rule. We spend many months looking for that cases. At the end, we found five bottlenecks (and fixes to them). We sent this initial paper to ASPLOS, but the reviewer were not happy with what they saw (e.g., it’s not an exciting research problem., the paper is poorly written, the paper does not yield or point to new insight or approaches, etc). After working on this energy topic for about 2-3 years (and already graduated at this time), I did not have much motivation to keep working on this paper. As so, the paper stayed in the same place for more than a year. Then, David (one of the co-authors) invited Anthony (the second author) to put some effort on this direction. Anthony did an awesome job looking for one really convincing bottleneck (the five bottlenecks were in naively-written programs, as one reviewer said). This really convincing bottleneck (and its fix) was found at the heart of the Akka framework. We improved the paper with this major modification, and the paper was accepted for ASE.