Supporting dynamic parallel object arrays

Orion S. Lawlor, Laxmikant V Kale

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

We present efficient support for generalized arrays of parallel data driven objects. The "array elements" are scattered across a parallel machine. Each array element is an object that can be thought of as a virtual processor. The individual elements are addressed by their "index", which can be an arbitrary object rather than a simple integer. For example, it can be a series of numbers, supporting multidimensional sparse arrays; a bit vector, supporting collections of quadtree nodes; or a string. Messages can be sent to any individual array element from any processor, and the elements can participate in reductions and broadcasts. Individual elements can be created or deleted dynamically at any time. Most importantly, the elements can migrate from processor to processor at any time. The paper discusses support for message delivery and collective operations in face of such dynamic behavior. The migration capabilities of array elements have proven extremely useful, for example, in implementing flexible load balancing strategies and for exploiting workstation clusters adaptively.

Original languageEnglish (US)
Title of host publicationACM 2001 Java Grande/ISCOPE Conference
Pages21-28
Number of pages8
StatePublished - Dec 1 2001
EventProceedings of the ACM 2001 Java Grande/ISCOPE Conference - Palo Alto, CA, United States
Duration: Jun 2 2001Jun 4 2001

Publication series

NameACM 2001 Java Grande/ISCOPE Conference

Other

OtherProceedings of the ACM 2001 Java Grande/ISCOPE Conference
Country/TerritoryUnited States
CityPalo Alto, CA
Period6/2/016/4/01

Keywords

  • Object migration
  • Parallel runtime
  • Parallel tree

ASJC Scopus subject areas

  • Engineering(all)

Fingerprint

Dive into the research topics of 'Supporting dynamic parallel object arrays'. Together they form a unique fingerprint.

Cite this