A platform-independent tool for modeling parallel programs

  • Authors:
  • Ferosh Jacob;Jeff Gray;Yu Sun;Purushotham Bangalore

  • Affiliations:
  • University of Alabama, Tuscaloosa, AL;University of Alabama, Tuscaloosa, AL;University of Alabama at Birmingham, Birmingham, AL;University of Alabama at Birmingham, Birmingham, AL

  • Venue:
  • Proceedings of the 49th Annual Southeast Regional Conference
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Programming languages that can utilize the underlying parallel architecture in shared memory, distributed memory or Graphics Processing Units (GPUs) are used extensively for solving scientific problems. However, from our observation of studying multiple parallel programs from various domains, such programming languages have a substantial amount of sequential code mixed with the parallel code. When rewriting the parallel code for another platform, the same sequential code is often reused without much modification. Although this is a common occurrence, existing tools and programming environments do not offer much support for this process. In this paper, we introduce a tool named PPmodel, which was designed and implemented to assist programmers in separating the core computation from the details of a specific parallel architecture. Using PPmodel, a programmer can identify and retarget the parallel section of a program to execute in a different platform. With PPmodel, a programmer is better enabled to focus on the parallel section of interest, while ignoring other parallel and sequential sections in a program. The tool is explained by example execution of the parallel section of an OpenMP program for the circuit satisfiability problem in a cluster using the Message Passing Interface (MPI).