INTERACTIVE PARALLELIZATION TOOL (IPT)
Licensed according to this deed.
Category
Published on
Abstract
Interactive Parallelization Tool (IPT) assists domain-experts and students in efficiently parallelizing their existing C/C++ applications using any of the following parallel programming models: Message Passing Interface (MPI), OpenMP, CUDA, and hybrid programming. For assisting in parallelization, IPT uses its knowledgebase of parallel programming expertise (encapsulated as design templates and rules), and specifications (i.e., what to parallelize and where) as provided by users. It parses the user-specifications and accordingly analyses the input source code to reengineer it for generating a parallel version of the code. IPT can be used for self-paced learning of different parallel programming paradigms. It helps in understanding the differences in the structure and performance of the parallel code generated for different specifications while using the same serial application. The current version of IPT has been developed to support explicit parallelization of specific categories of C/C++ applications. We are currently working on (1) extending the capabilities of IPT for parallelizing additional categories of C/C++ applications, (2) provisioning a web-portal for convenient code generation and testing on computational resources of the national CyberInfrastructure (CI), and 35) engaging the community in the development process and the usage of IPT.
Site
Sponsors
Users
Cite this work
Researchers should cite this work as follows: