Kremlin Logo
kremlin
Kremlin Logo

Kremlin is a tool that, given a serial program, tells you which regions to parallelize.

To create Kremlin, we developed a novel dynamic analysis, hierarchical critical path analysis, to detect parallelism across nested regions of the program, which connects to a parallelism planner which evaluates many potential parallelizations to figure out the best way for the user to parallelize the target program.

Sample Usage

      $> make CC=kremlin-cc
      $> ./tracking data
      $> kremlin tracking --personality=openmp

      File (lines)             Self-P  Cov.(%)
      1   imageBlur.c (49-58)      145.3   9.7
      2   imageBlur.c (37-45)      145.3   8.7
      3   getInterpPatch.c (26-35)  25.3   8.86
      4   calcSobel_dX.c (59-68)   126.2   8.1 
      5   calcSobel_dX.c (46-55)   126.2   8.1 

      ... ...                      ...    ... 
      

Release Schedule

Our plan is to release Kremlin in early 2012. Kremlin is currently undergoing extensive validation.

We are targeting an initial release for MacOS Lion/Snow Leopard and Linux systems.


The Kremlin Team

  
        
Saturnino Garcia    Donghwan Jeon    Chris Louie    Prof. Michael Taylor


Publications

  1. Kismet: Parallel Speedup Estimates for Serial Programs
    Donghwan Jeon, Saturnino Garcia, Chris Louie, and Michael Bedford Taylor.
    Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), October 2011. (pdf) (bib) (talk ppt, talk pdf)

  2. Kremlin: Rebooting and Rethinking gprof for the Multicore Age
    (aka Automatic Parallelism Planning and Discovery with Kremlin)
    Saturnino Garcia, Donghwan Jeon, Chris Louie, and Michael Bedford Taylor.
    Programming Language Design and Implementation (PLDI), June 2011. (pdf) (bib) (talk ppt, talk pdf)

  3. Parkour: Parallel Speedup Estimates for Serial Programs
    Donghwan Jeon, Saturnino Garcia, Chris Louie, Michael Bedford Taylor.
    HOTPAR, June 2011. (pdf) (bib)

  4. Kremlin: Like gprof, but for Parallelization
    Donghwan Jeon, Saturnino Garcia, Chris Louie, Sravanthi Kota Venkata and Michael Bedford Taylor.
    Principles and Practice of Parallel Programming (PPoPP), February 2011. (pdf, poster pdf) (bib)

  5. Bridging the Parallelization Gap: Automating Parallelism Discovery and Planning,
    Saturnino Garcia, Donghwan Jeon, Chris Louie, Sravanthi Kota Venkata, Michael Bedford Taylor.
    HOTPAR, June 2010. (pdf) (bib)


News

4/14/2011       Sat and DJ are award best Computer Science and Engineering Poster at the 2011 Jacobs School Engineering Expo!






2/15/2011Sat and DJ win best poster award at PPoPP 2011!

(They were working on a grant proposal during the awards session
and another UCSD student had to receive it for them!)




11/30/2009Chris wins a 2010 CRA Outstanding Undergraduate Researcher Award honorable mention based on his research on the Kremlin project. Congrats, Chris!