class_docstr: Stats for Graphcore IPU devices.
class_docstr_tok: ["Stats","for","Graphcore","IPU","devices","."]
code: def __init__(
      self, pid: int, gc_ipu_info: Optional[Any] = None
  ) -> None:
      self.samples: Deque[dict] = deque()
  
      if gc_ipu_info is None:
          if not gcipuinfo:
              raise ImportError(
                  "Monitoring IPU stats requires gcipuinfo to be installed"
              )
  
          self._gc_ipu_info = gcipuinfo.gcipuinfo()
      else:
          self._gc_ipu_info = gc_ipu_info
      self._gc_ipu_info.setUpdateMode(True)
  
      self._pid = pid
      self._devices_called: Set[str] = set()
  
file_path: wandb/wandb/sdk/internal/system/assets/ipu.py
imports: import threading
  from collections import deque
  from typing import TYPE_CHECKING, Any, Dict, List, Optional, Set, Tuple, Union
  import wandb
  from .aggregators import aggregate_mean
  from .asset_registry import asset_registry
  from .interfaces import Interface, Metric, MetricsMonitor
label_desc: Use image node_id 1 to create a new IPUStats object  with example: obj = IPUStats(pid, gc_ipu_info)