@@ -142,15 +142,20 @@ class Elastic(object):
142142 start_method (str): Multiprocessing start method to use when creating workers.
143143 monitor_interval (int): Interval, in seconds, to monitor the state of workers.
144144 max_restarts (int): Maximum number of worker group restarts before failing.
145- rdzv_configs (Dict[str, Any]): Additional rendezvous configs to pass to torch elastic, e.g. `{"timeout": 1200, "join_timeout": 900}`.
145+ rdzv_configs (Dict[str, Any]): Additional rendezvous configs to pass to torch elastic, e.g., `{"timeout": 1200, "join_timeout": 900}`.
146146 See `torch.distributed.launcher.api.LaunchConfig` and `torch.distributed.elastic.rendezvous.dynamic_rendezvous.create_handler`.
147147 Default timeouts are set to 15 minutes to account for the fact that some workers might start faster than others: Some pods might
148148 be assigned to a running node which might have the image in its cache while other workers might require a node scale up and image pull.
149+ When using the default `torch.distributed.elastic.rendezvous.c10d_rendezvous_backend.C10dRendezvousBackend`, consider also increasing
150+ the TCPStore `read_timeout`, e.g., {"timeout": 900, "join_timeout": 900, "read_timeout": 900}, as its default value of 60 seconds
151+ might be too tight if the zero-worker starts slower than any other worker.
152+ Increasing the default timeouts is mostly relevant in the absence of true gang-scheduling on the cluster, as provided by e.g.
153+ coscheduling or volcano.
149154
150155 increase_shared_mem (bool): [DEPRECATED] This argument is deprecated. Use `@task(shared_memory=...)` instead.
151156 PyTorch uses shared memory to share data between processes. If torch multiprocessing is used
152157 (e.g. for multi-processed data loaders) the default shared memory segment size that the container runs with might not be enough
153- and and one might have to increase the shared memory size. This option configures the task's pod template to mount
158+ and one might have to increase the shared memory size. This option configures the task's pod template to mount
154159 an `emptyDir` volume with medium `Memory` to to `/dev/shm`.
155160 The shared memory size upper limit is the sum of the memory limits of the containers in the pod.
156161 run_policy: Configuration for the run policy.
0 commit comments