Programming SMP clusters: node-level object groups and their use in a framework for Nbody applications

Date

1999

Editor(s)

Advisor

Gürsoy, Attila

Supervisor

Co-Advisor

Co-Supervisor

Instructor

BUIR Usage Stats
6
views
9
downloads

Series

Abstract

Symmetric Multiprocessor (SMP) cluster architectures emerge as a cheaper but powerful way of building parallel programming platforms. Providing mechanisms, layers of abstraction, or libraries gaining the power of SMP clusters is a challenging field of research. Viewing an SMP architecture as an array of processors would be insufficient, since such a model ignores essential possible gains over performance. We have stressed reusable patterns or libraries for collective communication and computations that can be used commonly in parallel applications within a parallel programming environment utilized for SMP clusters. We introduce node-level replicated objects, since replicated objects provide a versatile abstraction that can be used to implement static load-balancing, local services such as memory management, distributed data structures, and inter-module interfaces. This work was motivated while we were developing parallel object-oriented hierarchical Nbody applications with Charm++. We discuss common paradigms that we came across in those applications and present a framework for their implementation on SMP clusters. If the bodies that an interaction needs are local then that interaction can be completed without any communication. Otherwise, the data of the remote bodies must be brought, and after the interaction calculation, the remote body data must be updated. Parallel object-oriented design of this framework hides communication details of bringing remote bodies from programmer and presents an interface to develop and experiment with Nbody algorithms.

Source Title

Publisher

Course

Other identifiers

Book Title

Degree Discipline

Computer Engineering

Degree Level

Master's

Degree Name

MS (Master of Science)

Citation

Published Version (Please cite this version)

Language

English

Type