create_distributed_tensor_descriptor#

cuquantum.bindings.cutensornet.create_distributed_tensor_descriptor(
intptr_t handle,
int32_t num_modes,
extents,
element_strides,
block_sizes,
block_strides,
nranks_per_mode,
mode_labels,
int data_type,
) intptr_t[source]#

Creates a distributed tensor descriptor.

Parameters:
  • handle (intptr_t) – Opaque handle holding cuTensorNet’s library context and active distributed communicator.

  • num_modes (int32_t) – Number of tensor modes; must be greater than zero.

  • extents (object) –

    Array of size num_modes containing the full tensor extents before distribution. It can be:

    • an int as the pointer address to the array, or

    • a Python sequence of int64_t.

  • element_strides (object) –

    Optional array of size num_modes describing the local element layout. It can be:

    • an int as the pointer address to the array, or

    • a Python sequence of int64_t.

  • block_sizes (object) –

    Optional array of size num_modes describing block sizes. It can be:

    • an int as the pointer address to the array, or

    • a Python sequence of int64_t.

  • block_strides (object) –

    Optional array of size num_modes describing local physical spacing between blocks. It can be:

    • an int as the pointer address to the array, or

    • a Python sequence of int64_t.

  • nranks_per_mode (object) –

    Array of size num_modes describing the process grid. It can be:

    • an int as the pointer address to the array, or

    • a Python sequence of int64_t.

  • mode_labels (object) –

    Array of size num_modes; mode_labels[j] denotes the label of the j-th mode of the tensor. It can be:

    • an int as the pointer address to the array, or

    • a Python sequence of int32_t.

  • data_type (int) – Tensor element data type.

Returns:

On return, holds the created tensor descriptor.

Return type:

intptr_t