What does GCS server do and what does the acronym stand for?
Asked Answered
M

2

6

Found this acronym in the docs of Ray Core, used for its main API server:

[..] the head node needs to open several more ports:
    --port: Port of Ray (GCS server). The head node will start a GCS server listening on this port. Default: 6379.

Mexican answered 23/8, 2022 at 14:3 Comment(0)
P
5

The Ray 1.0 Architecture Whitepaper says GCS stands for "Global Control Store". Ray 2.0 was just released, which brought a lot of breaking changes. I believe GCS might change in the Ray 2.0 Architecture Whitepaper to mean "Global Control Service" to better encapsulate what it is, but the gist is the same :)

Components of a Ray cluster

Painful answered 8/9, 2022 at 17:24 Comment(2)
i know they moved away from redis. what are they using now?Mothball
@Mothball "The Ray 1.11 release marks the first step by removing the default Redis runtime dependency. GCS now stores its metadata in its own structure and message pubsub uses Ray’s internal implementations, allowing us to focus on adding better support for fault tolerance and high availability in Ray" from anyscale.com/blog/ray-version-1-11-releasedPainful
T
2

In Ray 2.0 it's called the Global Control Service. In 1.0 it was Global Control Store. It basically manages a cluster (there's exactly one inside each cluster) and runs on the cluster's head node. It's written in C++ and has been actively developed since 2017.

Relevant docs from the 2.0 whitepaper

One of the worker nodes is designated as the head node. In addition to the above processes, the head node also hosts: The Global Control Service (GCS). The GCS is a server that manages cluster-level metadata, such as the locations of actors, stored as key-value pairs that may be cached locally by workers. The GCS also manages a handful of cluster-level operations, including scheduling for placement groups and actors and determining cluster node membership. In general, the GCS manages metadata that is less frequently accessed but likely to be used by most or all workers in the cluster. This is to ensure that GCS performance is not critical to application performance. GCS fault tolerance is new in Ray 2.0, allowing the GCS to run on any and multiple nodes, instead of a designated head node.

The Global Control Store is now known as the Global Control Service (GCS) and features a completely updated design to simplify coordination and reliability.

The Global Control Service, also known as the GCS, is Ray’s cluster control plane. It manages the Ray cluster and serves as a centralized place to coordinate raylets and discover other cluster processes. The GCS also serves as an entry point for external services like the autoscaler and dashboard to communicate with the Ray cluster. The GCS is currently single-threaded except for heartbeat checks and resource polling; there are ongoing efforts to scale other operations such as actor management via multithreading.

enter image description here

Trow answered 23/1, 2023 at 21:8 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.