computation or the desynchronization across ranks.
Example::
      >>> ddp_model.register_comm_hook(None, noop_hook)
Return type:
      Future[Tensor]
Checkpointing of Communication Hooks
A stateful communication hook can be saved as a part of model
checkpointing to enable trainer restarts. To make a hook serializable,
"setstate" and "getstate" should be defined.
Warning:
"getstate" should exclude non-serializable attributes from a
  returned dictionary.
Warning:
"setstate" should properly initialize non-serializable
  attributes, excluded from a provided "state".
"PowerSGDState" has "setstate" and "getstate" implemented and
can be used as a reference.
class torch.distributed.algorithms.ddp_comm_hooks.powerSGD_hook.PowerSGDState
getstate()
  Returns a "Dict[str, Any]" which will be pickled and saved.
  "process_group" is not serializable and excluded from a returned
  state.

setstate(state)