ParADE: An OpenMP Programming Environment for SMP Cluster Systems. Demand for programming environments to exploit clusters of symmetric multiprocessors (SMPs) is increasing. In this paper, we present a new programming environment, called ParADE, to enable easy, portable, and high-performance programming on SMP clusters. It is an OpenMP programming environment on top of a multi-threaded software distributed shared memory (SDSM) system with a variant of home-based lazy release consistency protocol. To boost performance, the runtime system provides explicit message-passing primitives to make it a hybrid-programming environment. Collective communication primitives are used for the synchronization and work-sharing directives associated with small data structures, lessening the synchronization overhead and avoiding the implicit barriers of work-sharing directives. The OpenMP translator bridges the gap between the OpenMP abstraction and the hybrid programming interfaces of the runtime system. The experiments with several NAS benchmarks and applications on a Linux-based cluster show promising results that ParADE overcomes the performance problem of the conventional SDSM-based OpenMP environment.

This software is also peer reviewed by journal TOMS.

References in zbMATH (referenced in 5 articles )

Showing results 1 to 5 of 5.
Sorted by year (citations)

  1. Silber-Chaussumier, F.; Muller, A.; Habel, R.: Generating data transfers for distributed GPU parallel programs (2013) ioport
  2. Zhu, Weirong; Niu, Yanwei; Gao, Guang R.: Performance portability on EARTH: a case study across several parallel architectures (2007) ioport
  3. Costa, J. J.; Cortes, T.; Martorell, X.; Ayguade, E.; Labarta, J.: Running OpenMP applications efficiently on an everything-shared SDSM (2006)
  4. Fu, Song; Xu, Cheng-Zhong; Wims, Brian; Basharahil, Ramzi: Distributed shared arrays: A distributed virtual machine with mobility support for reconfiguration (2006) ioport
  5. Basharahil, Ramzi; Wims, Brian; Xu, Cheng-Zhong; Fu, Song: Distributed shared arrays: An integration of message passing and multithreading on SMP clusters (2005)