Title:
|
Combining static and dynamic data coalescing in unified parallel C
|
Author:
|
Alvanos, Michail; Farreras Esclusa, Montserrat; Tiotto, Ettore; Amaral, José Nelson; Martorell Bofill, Xavier
|
Other authors:
|
Universitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors; Universitat Politècnica de Catalunya. CAP - Grup de Computació d'Altes Prestacions |
Abstract:
|
Significant progress has been made in the development of programming languages and tools that are suitable for hybrid computer architectures that group several shared-memory multicores interconnected through a network. This paper addresses important limitations in the code generation for partitioned global address space (PGAS) languages. These languages allow fine-grained communication and lead to programs that perform many fine-grained accesses to data. When the data is distributed to remote computing nodes, code transformations are required to prevent performance degradation. Until now code transformations to PGAS programs have been restricted to the cases where both the physical mapping of the data or the number of processing nodes are known at compilation time. In this paper, a novel application of the inspector-executor model overcomes these limitations and allows profitable code transformations, which result in fewer and larger messages sent through the network, when neither the data mapping nor the number of processing nodes are known at compilation time. A performance evaluation reports both scaling and absolute performance numbers on up to 32,768 cores of a Power 775 supercomputer. This evaluation indicates that the compiler transformation results in speedups between 1.15× and 21 × over a baseline and that these automated transformations achieve up to 63 percent the performance of the MPI versions. |
Abstract:
|
Peer Reviewed |
Subject(s):
|
-Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors::Arquitectures paral·leles -Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors::Arquitectures distribuïdes -Parallel processing (Electronic computers) -C (Computer program language) -One-sided communication -Partitioned global address space -Performance evaluation -Unified parallel C -Processament en paral·lel (Ordinadors) -C (Llenguatge de programació) |
Rights:
|
http://creativecommons.org/licenses/by-nc-nd/3.0/es/ |
Document type:
|
Article - Submitted version Article |
Share:
|
|