Towards a more efficient implementation of OpenMP for clusters via translation to global arrays

  • Authors:
  • Lei Huang;Barbara Chapman;Zhenying Liu

  • Affiliations:
  • Department of Computer Science, University of Houston, Houston, TX 77204-3475, United States;Department of Computer Science, University of Houston, Houston, TX 77204-3475, United States;Department of Computer Science, University of Houston, Houston, TX 77204-3475, United States

  • Venue:
  • Parallel Computing - OpenMp
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper discusses a novel approach to implementing OpenMP on clusters. Traditional approaches to do so rely on Software Distributed Shared Memory systems to handle shared data. We discuss these and then introduce an alternative approach that translates OpenMP to Global Arrays (GA), explaining the basic strategy. GA requires a data distribution. We do not expect the user to supply this; rather, we show how we perform data distribution and work distribution according to the user-supplied OpenMP static loop schedules. An inspector-executor strategy is employed for irregular applications in order to gather information on accesses to potentially non-local data, group non-local data transfers and overlap communications with local computations. Furthermore, a new directive INVARIANT is proposed to provide information about the dynamic scope of data access patterns. This directive can help us generate efficient codes for irregular applications using the inspector-executor approach. We also illustrate how to deal with some hard cases containing reshaping and strided accesses during the translation. Our experiments show promising results for the corresponding regular and irregular GA codes.