Distributed filaments: Efficient fine-grain parallelism on a cluster of workstations

Vincent W. Freeh, David K. Lowenthal, Gregory R. Andrews

Research output: Contribution to conferencePaper

34 Scopus citations

Abstract

A fine-grain parallel program is one in which processes are typically small, ranging from a few to a few hundred instructions. Fine-grain parallelism arises naturally in many situations, such as iterative grid computations, recursive fork/join programs, the bodies of parallel FOR loops, and the implicit parallelism in functional or dataflow languages. It is useful both to describe massively parallel computations and as a target for code generation by compilers. However, fine-grain parallelism has long been thought to be inefficient due to the overheads of process creation, context switching, and synchronization. This paper describes a software kernel, Distributed Filaments (DF), that implements fine-grain parallelism both portably and efficiently on a workstation cluster. DF runs on existing, off-the-shelf hardware and software. It has a simple interface, so it is easy to use. DF achieves efficiency by using stateless threads on each node, overlapping communication and computation, employing a new reliable datagram communication protocol, and automatically balancing the work generated by fork/join computations.

Original languageEnglish (US)
StatePublished - Nov 14 1994
Event1st USENIX Conference on Operating Systems Design and Implementation, OSDI 1994 - Monterey, United States
Duration: Nov 14 1994Nov 17 1994

Other

Other1st USENIX Conference on Operating Systems Design and Implementation, OSDI 1994
CountryUnited States
CityMonterey
Period11/14/9411/17/94

    Fingerprint

ASJC Scopus subject areas

  • Information Systems
  • Hardware and Architecture
  • Computer Networks and Communications

Cite this

Freeh, V. W., Lowenthal, D. K., & Andrews, G. R. (1994). Distributed filaments: Efficient fine-grain parallelism on a cluster of workstations. Paper presented at 1st USENIX Conference on Operating Systems Design and Implementation, OSDI 1994, Monterey, United States.