OpenMP compiler for distributed memory architectures

OpenMP is an emerging industry standard for shared memory architectures. While OpenMP has advantages on its ease of use and incremental programming, message passing is today still the most widely-used programming model for distributed memory architectures. How to effectively extend OpenMP to distrib...

Full description

Saved in:
Bibliographic Details
Published in:Science China. Information sciences Vol. 53; no. 5; pp. 932 - 944
Main Authors: Wang, Jue, Hu, ChangJun, Zhang, JiLin, Li, JianJiang
Format: Journal Article
Language:English
Published: Heidelberg SP Science China Press 01.05.2010
Springer Nature B.V
Subjects:
ISSN:1674-733X, 1869-1919
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:OpenMP is an emerging industry standard for shared memory architectures. While OpenMP has advantages on its ease of use and incremental programming, message passing is today still the most widely-used programming model for distributed memory architectures. How to effectively extend OpenMP to distributed memory architectures has been a hot spot. This paper proposes an OpenMP system, called KLCoMP, for distributed memory architectures. Based on the "partially replicating shared arrays" memory model, we propose an algorithm for shared array recognition based on the inter-procedural analysis, optimization technique based on the producer/consumer relationship, and communication generation technique for nonlinear references. We evaluate the performance on nine benchmarks which cover computational fluid dynamics, integer sorting, molecular dynamics, earthquake simulation, and computational chemistry. The average scalability achieved by KLCoMP version is close to that achieved by MPI version. We compare the performance of our translated programs with that of versions generated for Omni+SCASH, LLCoMP, and OpenMP(Purdue), and find that parallel applications (especially, irregular applications) translated by KLCoMP can achieve more effective performance than other versions.
Bibliography:parallel compiling, high performance computing, distributed memory architecture, OpenMP, irregular application
11-5847/TP
P456.7
TP333.1
ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ObjectType-Article-2
ObjectType-Feature-1
content type line 23
ISSN:1674-733X
1869-1919
DOI:10.1007/s11432-010-0074-0