The Mobile Object Layer: A Run-Time Substrate for Mobile Adaptive Computations

We present a parallel runtime substrate that supports a global addressing scheme, object mobility, and automatic message forwarding required for the implementation of adaptive applications on distributed memory machines. Our approach is application-driven; the target applications are characterized by very large variations in time and length scales. Preliminary performance data from parallel unstructured adaptive mesh refinement on an SP2 suggest that the flexibility and general nature of the approach we follow does not cause undue overhead.

[1]  C. Hawblitzel,et al.  Data Migration Substrate for the Load Balancing of Parallel Adaptive Unstructured Mesh Computations , 1998 .

[2]  Joel H. Saltz,et al.  Parallel Programming Using C++ , 1996 .

[3]  Seth Copen Goldstein,et al.  Active messages: a mechanism for integrating communication and computation , 1998, ISCA '98.

[4]  Kirk L. Johnson,et al.  CRL: high-performance all-software distributed shared memory , 1995, SOSP.

[5]  Nikos Chrisochoides,et al.  MULTITHREADED MODEL FOR DYNAMIC LOAD BALANCING PARALLEL ADAPTIVE PDE COMPUTATIONS , 1995 .

[6]  Alan L. Cox,et al.  TreadMarks: shared memory computing on networks of workstations , 1996 .

[7]  Robert D. Blumofe,et al.  Scheduling multithreaded computations by work stealing , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[8]  Dennis Gannon,et al.  Tulip: a portable run-time system for object-parallel systems , 1996, Proceedings of International Conference on Parallel Processing.

[9]  Robert J. Fowler,et al.  The complexity of using forwarding addresses for decentralized object finding , 1986, PODC '86.

[10]  Seth Copen Goldstein,et al.  Active Messages: A Mechanism for Integrated Communication and Computation , 1992, [1992] Proceedings the 19th Annual International Symposium on Computer Architecture.

[11]  Thorsten von Eicken,et al.  Low-Latency Communication on the IBM RISC System/6000 SP , 1996, Proceedings of the 1996 ACM/IEEE Conference on Supercomputing.

[12]  Carl Kesselman,et al.  The Nexus task-parallel runtime system , 1994 .

[13]  Keshav Pingali,et al.  Data Movement and Control Substrate for Parallel Scientific Computing , 1997, CANPC.

[14]  James C. Browne,et al.  Distributed Dynamic Data-Structures for Parallel Adaptive Mesh-Refinement , 1995 .

[15]  Chris Hawblitzel,et al.  Mobile Object Layer : A data migration framework for Active Messages Communication Paradigm , 1998 .

[16]  Carl Kesselman Towards HPC++: A Unified Approach to Parallel Programming in C++ , 1998 .

[17]  Andrew P. Black,et al.  Fine-grained mobility in the Emerald system , 1987, TOCS.

[18]  Jeffrey S. Chase,et al.  The Amber system: parallel programming on a network of multiprocessors , 1989, SOSP '89.

[19]  A. Gupta,et al.  The Stanford FLASH multiprocessor , 1994, Proceedings of 21 International Symposium on Computer Architecture.

[20]  Gregory V. Wilson,et al.  Parallel Programming Using C , 1996 .

[21]  Guang R. Gao,et al.  ABC++: Concurrency by Inheritance in C++ , 1995, IBM Syst. J..