Kremlin: like gprof, but for parallelization

  • Authors:
  • Donghwan Jeon;Saturnino Garcia;Chris Louie;Sravanthi Kota Venkata;Michael Bedford Taylor

  • Affiliations:
  • University of California, San Diego, La Jolla, USA;University of California, San Diego, La Jolla, USA;University of California, San Diego, La Jolla, USA;University of California, San Diego, La Jolla, USA;University of California, San Diego, La Jolla, USA

  • Venue:
  • Proceedings of the 16th ACM symposium on Principles and practice of parallel programming
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper overviews Kremlin, a software profiling tool designed to assist the parallelization of serial programs. Kremlin accepts a serial source code, profiles it, and provides a list of regions that should be considered in parallelization. Unlike a typical profiler, Kremlin profiles not only work but also parallelism, which is accomplished via a novel technique called hierarchical critical path analysis. Our evaluation demonstrates that Kremlin is highly effective, resulting in a parallelized program whose performance sometimes outperforms, and is mostly comparable to, manual parallelization. At the same time, Kremlin would require that the user parallelize significantly fewer regions of the program. Finally, a user study suggests Kremlin is effective in improving the productivity of programmers.