Chapel is an emerging parallel programming language developed with the aim of providing better performance in High-Performance Computing as well as accessibility to the newcomer programmers in order to provide a relatively smoother learning curve in Parallel Computing.

Polly, a polyhedral compilation based optimization tool, performs data-locality based optimizations and automatic parallelization of LLVM IR represented in Polyhedral format. The resultant polyhedra are exposed to a number of loop optimizations like tiling, vectorization and strip mining.

I propose to integrate Polly’s Optimization passes in Chapel. In today’s world, it is well known that High-Performance Computing involves nested loops as one of their most compute intensive parts which are efficiently handled by Polly-based optimizations, hereby making HPC more productive and going towards more compute-intensive problems which are currently unfeasible.

Organization

Student

Sahil Yerawar

Mentors

  • Michael Ferguson
  • Siddharth Bhat
  • Philip Pfaffe
close

2018