Actor model implementation

From Wikipedia, the free encyclopedia

In computer science, actor model implementation concerns implementation issues for the actor model.

The Caltech Cosmic Cube was developed by Chuck Seitz et al. at Caltech providing architectural support for actor systems. A significant difference between the Cosmic Cube and most other parallel processors is that this multiple instruction, multiple data (MIMD) machine uses message passing, rather than shared variables, for communication between concurrent processes. This computational model is reflected in the hardware structure and operating system, and is also the explicit message passing communication seen by the programmer. According to Seitz [1985]:

It was a premise of the Cosmic Cube experiment that the internode communication should scale well to very large numbers of nodes. A direct network like the hypercube satisfies this requirement, with respect to both the aggregate bandwidth achieved across the many concurrent communication channels and the feasibility of the implementation. The hypercube is actually a distributed variant of an indirect logarithmic switching network like the Omega or banyan networks: in shared-storage organizations, uniform communication paths are typically used. However, with the hypercube architecture, communication paths can traverse varying numbers of channels, resulting in different latencies. This makes it possible to optimize performance by placing processes in nodes based on communication locality.

J–Machine

The J–Machine was developed by Bill Dally et al. at MIT providing architectural support suitable for actors. This included the following:

  • Asynchronous messaging
  • A uniform space of actor addresses to which messages could be sent concurrently regardless of whether the recipient actor was local or nonlocal
  • A form of actor pipelining (see actor model)

Concurrent Smalltalk (which can be modeled using actors) was developed to program the J Machine.

Prototype actor programming language

See also

References

Related Articles

Wikiwand AI