Execution Layer
The Execution Layer is composed of a heterogeneous network of computational nodes, referred to as actors, which are capable of executing instructions defined by the virtual machine. Each actor may support a subset of the available instructions. For example, some actors may specialize in instructions related to a specific encryption scheme, while others may support a single operation, such as ciphertext multiplication.
When registering as an actor, the node specifies the list of instructions it can execute, along with metadata describing its performance characteristics. This information is crucial for task allocation and ensures that actors are matched to tasks that align with their capabilities. Actors also have the flexibility to modify their supported instruction set at any time, enabling them to adapt to changing workloads or optimize for specific tasks.
As described in Section 5.5, during the assignment of an actor to a task(block of instructions), the system considers the actor’s declared capabilities. It ensures that actors are only assigned blocks consisting of instructions they explicitly support. This guarantees efficient and reliable execution, even in a heterogeneous environment with actors of varying specializations.
We discuss actors in more details in section 5.8
Last updated