A Pilot Study to Compare Programming Effort for Two Parallel Programming Models (PREPRINT)

Abstract

CONTEXT: Writing software for the current generation of parallel systems requires significant programmer effort, and the community is seeking alternatives that reduce effort while still achieving good performance. OBJECTIVE: Measure the effect of parallel programming models (message-passing vs. PRAM-like) on programmer effort. DESIGN, SETTING, and SUBJECTS: One group of subjects implemented sparse-matrix dense-vector multiplication using message-passing (MPI), and a second group solved the same problem using a PRAM-like model (XMTC). The subjects were students in two graduate-level classes: one class was taught MPI and the other was taught XMTC. MAIN OUTCOME MEASURES: Development time, program correctness. RESULTS: Mean XMTC development time was 4.8 hours less than mean MPI development time (95% confidence interval, 2.0-7.7), a 46% reduction. XMTC programs were more likely to be correct, but the difference in correctness rates was not statistically significant (p=.16). CONCLUSIONS: XMTC solutions for this particular problem required less effort than MPI equivalents, but further studies are necessary which examine different types of problems and different levels of programmer experience.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Dec 28, 2007
Accession Number
ADA482083

Entities

People

  • John Gilbert
  • Lorin Hochstein
  • Uzi Vishkin
  • Victor Basili

Organizations

  • University of Nebraska Omaha

Tags

Communities of Interest

  • Energy and Power Technologies

DTIC Thesaurus Topics

  • Algorithms
  • C Programming Language
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Data Analysis
  • Engineering
  • High Performance Computing
  • Intervals
  • Language
  • Models
  • Pilot Studies
  • Programming Languages
  • Simulators
  • Software Development
  • Sparse Matrix

Fields of Study

  • Computer science

Readers

  • Brain and Cognitive Science; Experimental Psychology; Cognitive Neuroscience
  • Parallel and Distributed Computing.