CS 6235 - Analysis of Parallel Programs

Project

Parallel programs bring in an additional complexity to progam analysis. Many of the serial analysis have to be rewritten in the context of parallel programs. The goal of this project is to identify the impact of parallelism (MHP analysis) on different analysis. Each one of you is expected to choose an analysis and study the impact of MHP analysis on your chosen analysis.

  • Context sensitive constant propagation
  • Context insensitive constant propagation
  • Context sensitive Points-to Analysis
  • Context insensitive Points-to Analysis
  • Context sensitive Escape analysis
  • Context insensitive Escape analysis
  • Dependence analysis for Loop Distribution
  • Loop parallelization
  • Reaching definitions (X10)
  • Inter-procedural Program Slicing - Java

    Steps to follow:
    1. Step 1.
      1. Make group - max team size = 2.
      2. Choose a classical analysis from the above set (or find one yourself and inform).
      3. Deadline: Apr 23
    2. Step 2. Write a section about the classical analysis.
      1. Motivate the importance of the analysis.
      2. Explain the algorithm for the analysis.
      3. Show an example illustrating how you apply the analysis.
      4. Deadline: Submit the document (preliminary report) by Apr 30
    3. Step 3. Impact of Parallelism.
      1. Study the impact of parallelism on the chosen analysis.
      2. Write two examples that show the impact.
      3. Design a new algorithm to perform the same analysis on parallel programs.
      4. Show how the algorithm fares on the two chosen examples.
      5. Deadline: Submit the final report (combining preliminary report and this one) by May 10.