code: def testSimpleReduceWithIndexedSlices(self):
      devices = ["/cpu:0", "/gpu:0"]
      t0 = _make_indexed_slices([[1.0, 2.0]], [1], [5, 2], devices[0])
      t1 = _make_indexed_slices(
          [[3.0, 4.0], [5.0, 6.0]], [1, 3], [5, 2], devices[1]
      )
      per_replica = value_lib.PerReplica((t0, t1))
      result = cross_device_ops_lib._simple_reduce(
          per_replica,
          devices[0],
          math_ops.add_n,
          reduce_util.ReduceOp.SUM,
      )
  
      # Test that the result is semantically equal to both the concatenated
      # IndexedSlices with and without duplicate indices.
      total_with_dups = _make_indexed_slices(
          [[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]],
          [1, 1, 3],
          [5, 2],
          devices[0],
      )
      total_without_dups = _make_indexed_slices(
          [[4.0, 6.0], [5.0, 6.0]], [1, 3], [5, 2], devices[0]
      )
      self._assert_indexed_slices_equal(total_with_dups, result)
      self._assert_indexed_slices_equal(total_without_dups, result)
  
imports: import itertools
  import os
  import threading
  import time
  from absl.testing import parameterized
  import numpy
  from tensorflow.core.protobuf import config_pb2
  from tensorflow.python.distribute import cluster_resolver
  from tensorflow.python.distribute import collective_all_reduce_strategy
  from tensorflow.python.distribute import collective_util
  from tensorflow.python.distribute import combinations
  from tensorflow.python.distribute import cross_device_ops
  from tensorflow.python.distribute import cross_device_utils
  from tensorflow.python.distribute import device_util
  from tensorflow.python.distribute import distribute_utils
  from tensorflow.python.distribute import multi_worker_test_base
  from tensorflow.python.distribute import multi_worker_util
  from tensorflow.python.distribute import reduce_util
  from tensorflow.python.distribute import strategy_combinations
  from tensorflow.python.distribute import values
  from tensorflow.python.eager import context
  from tensorflow.python.eager import test
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import indexed_slices
  from tensorflow.python.framework import kernels
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import tensor
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import collective_ops
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import variables
label_desc: Use image node_id 3 for calling the SingleWorkerCrossDeviceOpsTest obj's underlying member method code with example usage: obj.testSimpleReduceWithIndexedSlices() without return types