A comparison of three programming models for adaptive applications on the origin2000

  • Authors:
  • Hongzhang Shan;Jaswinder Pal Singh;Leonid Oliker;Rupak Biswas

  • Affiliations:
  • Department of Computer Science, Princeton University, 35 Olden Street, Princeton, New Jersey;Department of Computer Science, Princeton University, 35 Olden Street, Princeton, New Jersey;National Energy Research Scientific Computing Center, Mail Stop 50F, Lawrence Berkeley National Laboratory, Berkeley, California;NASA Advanced Supercomputing Division, Mail Stop T27A-1, NASA Ames Research Center, Moffett Field, California

  • Venue:
  • Journal of Parallel and Distributed Computing
  • Year:
  • 2002

Quantified Score

Hi-index 0.02

Visualization

Abstract

Adaptive applications have computational workloads and communication patterns that change unpredictably at runtime, requiring dynamic load balancing to achieve scalable performance on parallel machines. Efficient parallel implementations of such adaptive applications is therefore a challenging task. In this paper, we compare the performance of and the programming effort required for two major classes of adaptive applications under three leading parallel programming models on an SGI Origin2000 system, a machine that supports all three models efficiently. Results indicate that the three models deliver comparable performance; however, the implementations differ significantly beyond merely using explicit messages versus implicit loads/stores even though the basic parallel algorithms are similar. Compared with the message-passing (using MPI) and SHMEM programming models, the cache-coherent shared address space (CC-SAS) model provides substantial ease of programming at both the conceptual and program orchestration levels, often accompanied by performance gains. However, CC-SAS currently has portability limitations and may suffer from poor spatial locality of physically distributed shared data on large numbers of processors.