What exactly happens in this scenario

Say I have two remote actors. When executing a remote method of one of the remote actors, it invokes ray.get on a remote method of another actor. What exactly happens in this scenario? Is this invocation relayed through the master at all?

If you have two actors, A and B, and you execute a remote method of A, which executes a remote method of B and calls ray.get() on the result, the latter invocation of B’s remote method will be submitted directly by actor A to actor B, and the result will be returned directly to actor A, without going through the head node.

You may be interested in checking our the Ray 1.0 white paper for answers to similar questions! Ray 1.x Architecture - Google Docs