Welcome to the new version of CaltechAUTHORS. Login is currently restricted to library staff. If you notice any issues, please email coda@library.caltech.edu
Published May 1, 2005 | public
Paper Open

Reusable and Extensible High Level Data Distributions

Abstract

This paper presents a reusable design of a data distribution framework for data parallel high performance applications. Distributions are a means to express locality in systems composed of large numbers of processor and memory components connected by a network. Since distributions have a great effect on the performance of applications, it is important that the distribution strategy is flexible, so its behavior can change depending on the needs of the application. At the same time, high productivity concerns require that the user is shielded from error-prone, tedious details such as communication and synchronization. We propose an approach to distributions that enables a user to refine a distribution type and adjust it to optimize the performance of thee application. Additionally, the low-level communication and synchronization details are concealed from a programmer, resulting in increased productivity. To emphasize the generality of our distribution machinery, we present its abstract design in the form of a design pattern, which is independent of a concrete implementation. To illustrate the applicability of our distribution framework design, we outline the implementation of data distributions in terms of the Chapel high productivity programming language.

Files

pathpc-1.pdf
Files (69.3 kB)
Name Size Download all
md5:d07bafc0b5f393b3eb8abe33d3fd8145
69.3 kB Preview Download

Additional details

Created:
August 19, 2023
Modified:
October 24, 2023