class_docstr: Default data parallel wrapper, which applies data parallel to all unsharded modules.
class_docstr_tok: ["Default","data","parallel","wrapper",",","which","applies","data","parallel","to","all","unsharded","modules","."]
code: def __init__(
      self,
      bucket_cap_mb: int = 25,
      static_graph: bool = True,
      find_unused_parameters: bool = False,
      allreduce_comm_precision: Optional[str] = None,
  ) -> None:
      self._bucket_cap_mb: int = bucket_cap_mb
      self._static_graph: bool = static_graph
      self._find_unused_parameters: bool = find_unused_parameters
      self._allreduce_comm_precision = allreduce_comm_precision
  
imports: import abc
  import copy
  from collections import OrderedDict
  from typing import Any, cast, Dict, Iterator, List, Optional, Set, Tuple, Type
  import torch
  import torch.distributed
  from torch import nn
  from torch.distributed.algorithms.ddp_comm_hooks import default_hooks
  from torch.distributed.fsdp import FullyShardedDataParallel
  from torch.nn.modules.module import _IncompatibleKeys
  from torch.nn.parallel import DistributedDataParallel
  from torchrec.distributed.comm import get_local_size
  from torchrec.distributed.planner import EmbeddingShardingPlanner, Topology
  from torchrec.distributed.sharding_plan import get_default_sharders
  from torchrec.distributed.types import ModuleSharder, ShardedModule, ShardingEnv, ShardingPlan
  from torchrec.distributed.utils import add_prefix_to_state_dict, append_prefix, copy_to_device, filter_state_dict, sharded_model_copy
  from torchrec.optim.fused import FusedOptimizerModule
  from torchrec.optim.keyed import CombinedOptimizer, KeyedOptimizer
label_desc: Use image node_id 1 to create a new DefaultDataParallelWrapper object from inherited base classes: DataParallelWrapper with example: obj = DefaultDataParallelWrapper(bucket_cap_mb, static_graph, find_unused_parameters, allreduce_comm_precision)