The Inspector/Executor Compiler (IEC) implements a source-to-source transformation scheme for generating distributed memory code for irregular parallel loops. Loops might also contain dependences through associative and commutative reduction operators. Details of code-generation scheme described in these papers in Supercomputing 2012 and in TOPC (to be published soon)
M Ravishankar, R Dathathri, V Elango, LN Pouchet, J Ramanujam, A Rountev, P Sadayappan, "Distributed Memory Code Generation for Mixed Irregular/Regular Computations", PPoPP 2015, San Fransisco, CA, USA. link. Example of generated code : link
M Ravishankar, J Eisenlohr, LN Pouchet, J Ramanujam, A Rountev, P Sadayappan, "Code generation for parallel execution of a class of irregular loops on distributed memory systems", Supercomputing 2012, Salt Lake City, UT, USA. link.
M Ravishankar, J Eisenlohr, LN Pouchet, J Ramanujam, A Rountev, P Sadayappan, "Automatic Parallelization of a Class of Irregular Loops for Distributed Memory Systems", link to appear in ACM Transaction on Parallel Computing
Please follow the instructions in the README
This software is based upon work supported by the U. S. National Science Foundation under grants 0811457, 0904549, 0926127, 0926687, 1059417, 1321147 and 1404995 and by the U.S. Department of Energy under grant DE-SC0008844. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation, the Department of Energy, or The Ohio State University.