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: Returns a mapping from devices to the array slices each contains.
  
  The mapping includes all global devices, i.e., including
  non-addressable devices from other processes.
docstr_tok: ["Returns","a","mapping","from","devices","to","the","array","slices","each","contains",".","The","mapping","includes","all","global","devices",",","i.e.",",","including","non-addressable","devices","from","other","processes","."]
code: def devices_indices_map(
      self, global_shape: Shape
  ) -> Mapping[Device, Index | None]:
      """Returns a mapping from devices to the array slices each contains.
  
      The mapping includes all global devices, i.e., including
      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 2 for calling the Sharding obj's underlying member method code with example usage: obj.devices_indices_map(global_shape) without return types