Skip to content

Latest commit

 

History

History
52 lines (35 loc) · 1.36 KB

timer.rst

File metadata and controls

52 lines (35 loc) · 1.36 KB

Expiration Timers

.. automodule:: torch.distributed.elastic.timer
.. currentmodule:: torch.distributed.elastic.timer

Client Methods

.. autofunction:: torch.distributed.elastic.timer.configure

.. autofunction:: torch.distributed.elastic.timer.expires

Server/Client Implementations

Below are the timer server and client pairs that are provided by torchelastic.

Note

Timer server and clients always have to be implemented and used in pairs since there is a messaging protocol between the server and client.

Below is a pair of timer server and client that is implemented based on a multiprocess.Queue.

.. autoclass:: LocalTimerServer

.. autoclass:: LocalTimerClient

Below is another pair of timer server and client that is implemented based on a named pipe.

.. autoclass:: FileTimerServer

.. autoclass:: FileTimerClient


Writing a custom timer server/client

To write your own timer server and client extend the torch.distributed.elastic.timer.TimerServer for the server and torch.distributed.elastic.timer.TimerClient for the client. The TimerRequest object is used to pass messages between the server and client.

.. autoclass:: TimerRequest
   :members:

.. autoclass:: TimerServer
   :members:

.. autoclass:: TimerClient
   :members: