class_docstr: Describes how a :class:`jax.Array` is laid out across devices.
    
class_docstr_tok: ["Describes","how","a",":","class",":","`","jax.Array","`","is","laid","out","across","devices","."]
docstr: The set of devices that this :class:`Sharding` spans.
  
  In multi-controller JAX, the set of devices is global, i.e., includes
  non-addressable devices from other processes.
docstr_tok: ["The","set","of","devices","that","this",":","class",":","`","Sharding","`","spans",".","In","multi-controller","JAX",",","the","set","of","devices","is","global",",","i.e.",",","includes","non-addressable","devices","from","other","processes","."]
code: def device_set(self) -> set[Device]:
      """The set of devices that this :class:`Sharding` spans.
  
      In multi-controller JAX, the set of devices is global, i.e., includes
      non-addressable devices from other processes.
      """
      raise NotImplementedError(
          "Subclasses should implement this method."
      )
  
file_path: jax/jax/_src/sharding.py
imports: from __future__ import annotations
  from collections.abc import Mapping, Sequence
  import functools
  from jax._src import util
  from jax._src import xla_bridge
  from jax._src.lib import xla_client
label_desc: Use image node_id 1 for calling the Sharding obj's underlying member method code with example usage: obj.device_set() without return types