class_docstr: Track a series of values and provide access to smoothed values over a
  window or the global series average.
class_docstr_tok: ["Track","a","series","of","values","and","provide","access","to","smoothed","values","over","a","window","or","the","global","series","average","."]
docstr: Warning: does not synchronize the deque!
docstr_tok: ["Warning",":","does","not","synchronize","the","deque","!"]
code: def synchronize_between_processes(self):
      """
      Warning: does not synchronize the deque!
      """
      if not is_dist_avail_and_initialized():
          return
      t = torch.tensor(
          [self.count, self.total], dtype=torch.float64, device="cuda"
      )
      dist.barrier()
      dist.all_reduce(t)
      t = t.tolist()
      self.count = int(t[0])
      self.total = t[1]
  
imports: import datetime
  import errno
  import os
  import time
  from collections import defaultdict, deque
  import torch
  import torch.distributed
label_desc: Use image node_id 3 for calling the SmoothedValue obj's underlying member method code with example usage: obj.synchronize_between_processes() without return types