Novel LLVM-Based Software Technology to Assist in Parallelization of Scientific Codes with OpenMP and OpenACC.
Parallware technology performs static program analysis on top of the LLVM compiler infrastructure. In order to discover parallelism, Parallware uses a new computational approach that consist on a hierarchical classification scheme for dependence analysis. It overcomes the limitations of the classical mathematical approach, discovering parallelism in microbenchmarks, mini-apps and snippets of real scientific applications.Parallware technology automatically generates parallel source code using the OpenMP and OpenACC parallel programming standards. It is compiler-vendor independent and can be run on different hardware platforms.