Publications

Portable mechanisms for multithreaded distributed computations

Abstract

We describe simple mechanisms designed to support distributed parallel computations in which lightweight threads of control may be created and destroyed, and threads may communicate in dynamic fashions. These mechanisms support multiple threads, a global memory model via interprocessor references, and asynchronous events. Novel features of our approach are a careful integration of multithreading and communication, and implementation techniques that permit high performance on top of commodity hardware and system software. In this paper, we describe the basic mechanisms and their implementation in Nexus, a runtime system designed as a compiler target for task-parallel programming languages. We then present the results of a series of experiments conducted using a Nexus prototype and provide a detailed evaluation of the e ciency with which the various mechanisms can be implemented on di …

Date
1994
Authors
Ian Foster, Carl Kesselman, Steven Tuecke
Journal
Argonne National Laboratory