cupyx.distributed.array.distributed_array#

cupyx.distributed.array.distributed_array(array, index_map, mode=None)[源代码][源代码]#

从给定的数据创建一个分布式数组。

此函数不检查给定数组的所有元素是否存储在某些块中。

参数:
  • array (array_like) – DistributedArray 对象、cupy.ndarray 对象或任何可以传递给 numpy.array() 的其他对象。

  • index_map (dict from int to array indices) – 指定ID设备的块索引。一个设备可以拥有多个块,这些块可以指定为数组索引列表。

  • mode (mode object, optional) – 确定如何解释块重叠的模式。默认为 cupyx.distributed.array.REPLICA

返回类型:

DistributedArray

参见

DistributedArray.mode 关于模式的详细信息。

示例

>>> array = cupy.arange(9).reshape(3, 3)
>>> A = distributed_array(
...     array,
...     {0: [(slice(2), slice(2)),  # array[:2, :2]
...          slice(None, None, 2)], # array[::2]
...      1:  (slice(1, None), 2)})  # array[1:, 2]