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

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

  • Affiliations:
  • Department of Computer Science, 35 Olden Street, Princeton University, Princeton, NJ;Department of Computer Science, 35 Olden Street, Princeton University, Princeton, NJ;National Energy Research Scientific Computing Center, Mail Stop 50F, Lawrence Berkeley National Laboratory, Berkeley, CA;Computer Sciences Corporation, Mail Stop T27A-1, NASA Ames Research Center, Moffett Field, CA

  • Venue:
  • Proceedings of the 2000 ACM/IEEE conference on Supercomputing
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

Adaptive applications have computational workloads and communication patterns which change unpredictably at runtime, requiring load balancing to achieve scalable performance on parallel machines. Efficient parallel implementation of such adaptive application 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 Origin 2000 system, a machine which 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 level 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.