OpenMP-oriented Applications for Distributed Shared Memory Architectures

A. Marowka, Z. Liu, and B. Chapman (USA)


OpenMP, Data Locality, NPB, Programming Model


The fast emergence of OpenMP as the preferable parallel programming paradigm for small-to-medium scale paral lelism could decline unless OpenMP will show capabilities to be the model-of-choice for large scale high performance parallel computing of the next decade. The main stumbling block from adapting OpenMP for distributed shared memory (DSM) machines, which are based on architecture like cc-NUMA, stems from the ab sence of capabilities for data placement among processors and threads for achieving data locality. The absence of such mechanism causes remote memory accesses and in efficient cache memory use, both of which lead to poor performance. This paper presents a simple software programming approach called Copy-inside-Copy-back (CC) that exploits the privatization mechanism of OpenMP for data place ment and re-placement. This technique enables one to dis tribute data without taking the control and the flexibility from the programmer, and thus, is an alternative to the tra ditional implicit and explicit approaches. Moreover, the CC approach enables SPMD style of programming that makes the development process of an OpenMP application more structured, and simply to modify and debug. The CC technique was tested and analyzed using the NAS Parallel Benchmarks on SGI Origin 2000 multipro cessors machine. The lesson learnt from this study shows that OpenMP can deliver the desired largescale paral lelism although fast copy mechanism is essential.

Important Links:

Go Back