[core] Simplify CoreWorker state machine in worker pool. #47994
Labels
core
Issues that should be addressed in Ray Core
enhancement
Request for new feature and/or capability
P0
Issues that should be fixed in short order
Description
Now:
(None) -> RegisterWorker -> AnnouncePort -> (ready) -> PopWorker to assign task -> task done, PushWorker back -> (ready). At each step it can go to DisconnectClient -> (None).
So in order to be (ready), it needs 2 RPCs: RegisterWorker -> AnnouncePort. This is not needed, we can merge the 2.
so RegisterWorker's only usage is to ask for a port. We can instead give the port in worker start up commandline, then it can be:
One caveat: Drivers. because it's not started by raylet, raylet can't give it a port by commandline. it needs a way to receive a port. Today, it's a separate RPC
RegisterDriver
anyway. let's make itRegisterDriver -> BikeshedRegisterWorkerAndAnnouncePort -> (ready).
Use case
No response
The text was updated successfully, but these errors were encountered: