Concurrency: A Case Study in Remote Tasking and Distributed IPC in Mach

  • Authors:
  • Dejan S. Milojicic;Alan Langerman;David L. Black;Michelle Dominijanni;Randall W. Dean;Steven J. Sears

  • Affiliations:
  • -;-;-;-;-;-

  • Venue:
  • IEEE Parallel & Distributed Technology: Systems & Technology
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

Remote tasking encompasses a range of functionality, such as remote forking, remote spawning, and task migration. To overcome the relatively high costs of these mechanisms, optimizations can be applied at various levels of the underlying operating system or application. Possible optimizations include concurrent message transmission, increased throughput, and reduced latency at the distributed IPC level; batching, overlapping, and pipelining at the remote-tasking level; and multithreading at the application level. Of particular interest is the resulting concurrency, because in a complex program, it may be a dominant performance factor. Distributed IPC is typically characterized by throughput and latency. However, many design and implementation details that are important for real application performance are obscured by this simple characterization. This article describes distributed IPC from a remote-tasking point of view, because remote tasking exercises all aspects of distributed IPC extensively. The authors analyze two versions of distributed IPC supported in the Mach microkernel.