=============================
As the name implies, debugging communication hooks are only used
for debugging and performance optimization purpose.
Warning:
Debugging communication hooks do not necessarily output the correct
  results.
torch.distributed.algorithms.ddp_comm_hooks.debugging_hooks.noop_hook(_, bucket)
This DDP communication hook returns a future that wraps the input,
   so it is a noop that does not incur any communication overheads.
This hook should only be used for headroom analysis of
   allreduce optimization, instead of the normal gradient
   synchronization. For example, if only less than 10% speedup of
   training time can be observed after this hook is registered, it
   usually implies that allreduce is not a performance bottleneck for
   this case. Such instrumentation can be particularly useful if GPU
   traces cannot be easily retrieved or the trace analysis is
   complicated some factors such as the overlap between allreduce and