class_docstr: Strategy for training multiple TPU devices using the :func:`torch_xla.distributed.xla_multiprocessing.spawn`
  method.
class_docstr_tok: ["Strategy","for","training","multiple","TPU","devices","using","the",":","func",":","`","torch_xla.distributed.xla_multiprocessing.spawn","`","method","."]
code: def __init__(
      self,
      accelerator: Optional["pl.accelerators.Accelerator"] = None,
      parallel_devices: Optional[List[torch.device]] = None,
      checkpoint_io: Optional[
          Union[XLACheckpointIO, _WrappingCheckpointIO]
      ] = None,
      precision_plugin: Optional[XLAPrecision] = None,
      debug: bool = False,
      sync_module_states: bool = True,
      **_: Any,
  ) -> None:
      if not _XLA_AVAILABLE:
          raise ModuleNotFoundError(str(_XLA_AVAILABLE))
      super().__init__(
          accelerator=accelerator,
          parallel_devices=parallel_devices,
          cluster_environment=XLAEnvironment(),
          checkpoint_io=checkpoint_io,
          precision_plugin=precision_plugin,
          start_method="fork",
      )
      self.debug = debug
      self._launched = False
      self._sync_module_states = sync_module_states
  
imports: import io
  import os
  from typing import TYPE_CHECKING, Any, Dict, List, Optional, Union
  import torch
  from torch import Tensor
  from torch.nn import Module
  from typing_extensions import override
  import lightning.pytorch
  from lightning.fabric.accelerators.xla import _XLA_AVAILABLE, _XLA_GREATER_EQUAL_2_1
  from lightning.fabric.plugins import XLACheckpointIO
  from lightning.fabric.plugins.environments import XLAEnvironment
  from lightning.fabric.strategies import _StrategyRegistry
  from lightning.fabric.utilities.optimizer import _optimizers_to_device
  from lightning.fabric.utilities.types import _PATH, ReduceOp
  from lightning.pytorch.plugins import XLAPrecision
  from lightning.pytorch.plugins.io.wrapper import _WrappingCheckpointIO
  from lightning.pytorch.strategies.ddp import DDPStrategy
  from lightning.pytorch.strategies.launchers.xla import _XLALauncher
  from lightning.pytorch.strategies.strategy import TBroadcast
  from lightning.pytorch.trainer.states import TrainerFn
  from lightning.pytorch.utilities import find_shared_parameters, set_shared_parameters
  from lightning.pytorch.utilities.rank_zero import rank_zero_only
label_desc: Use image node_id 1 to create a new XLAStrategy object from inherited base classes: DDPStrategy with example: obj = XLAStrategy(accelerator, parallel_devices, checkpoint_io, precision_plugin, debug, sync_module_states)