Actor Model
What is the Actor model?¶
The actor model is a message-based concurrency model. In the world of the actor model, you can imagine that multiple actors are concurrently running and communicating each other via message-passing.
An actor has 1) an immutable identity, 2) encapsulated mutable local state , 3) procedures to manipulate the local state, and 4) logical thread of control. An actor may 1) send messages to other actors, 2) process received messages one-by-one, 3) change local state, and 4) even create new actors.
What are typical API routines in the Actor model?¶
new
: create an actor.start()
: let the actor start sending and receiving messages.exit()
: terminate the actor.send()
: send a message to another actor.process()
: process a received message from another actor.
Reference¶
-
Paul, Sri Raj, Akihiro Hayashi, Kun Chen, and Vivek Sarkar. "A Productive and Scalable Actor-Based Programming System for PGAS Applications." In International Conference on Computational Science, pp. 233-247. Springer, Cham, 2022.
-
"COMP 322: Fundamentals of Parallel Programming Lecture 21: Actors" by Prof. Vivek Sarkar.