LANGUAGE SUPPORT FOR MULTI-PARADIGM AND MULTI-GRAIN PARALLELISM ON SMP-CLUSTER

C. Hu, J. Wang, and J. Li

Keywords

Parallel computing language, parallel execution model, multi-paradigm parallel, multi-grain parallel, extended OpenMP specifica-tion

Abstract

The characteristics of large-scale parallel applications are multi- paradigm and multi-grain parallel in essence. The key factor in improving the performance of parallel application systems is to determine suitable parallel paradigms and grains according to the nature of the practical problem. Therefore, it is necessary to provide multi-paradigm and multi-grain parallel programming interface for development of large-scale parallel application systems. This paper proposes a multi-paradigm and multi-grain parallel execution model integrated coarse-grain parallelism (paralleled by macro tasks), mid-grain parallelism (paralleled by basic program blocks), and fine-grain parallelism (paralleled in repetition blocks). This model also supports the task parallel, data parallel, and sequential executing. In this paper we also discuss the programming mechanism of this model by extended OpenMP specification. The extensions include computing resource partition, defining different grain task groups, mapping from task groups to the respective processor groups, out-of-core computing, asynchronous parallel I/O, and definition of sequential relationship of tasks. We compare the performance of different implementations of benchmark, using the same numerical algorithm but employing different programming approaches, including MPI, MPI + OpenMP, and our extended OpenMP. We also discuss a case based on SMP-Cluster and network storage architecture.

Important Links:

Go Back