Actor
A distributed object that holds state across many calls. Created by applying the distribute decorator to a class rather than a function.
Tasks are stateless: each call starts fresh. That is the right model until setup is expensive (loading a large model, opening a connection) and you need it across many calls. An actor is placed on a specific node and keeps its state there, so you construct it once and call methods on it repeatedly.
Distributed computeSDK & API
Related terms
- Task: One unit of distributed work: a single call to a function decorated with the distribute decorator. Tasks are stateless, so each call starts fresh.
- Future: A handle to a result that does not exist yet. Calling a distributed function returns a future immediately, while the work happens elsewhere.
- distribute decorator: The `eugo.hpc` decorator that turns a function into a distributed task, or a class into an actor. A decorated call returns a future instead of a value.
- Shared state: Data that more than one task reads or writes. Shared mutable state is what turns a parallel run into a race condition.