code: def _grouped_reducescatter(
      tensors,
      name=None,
      op=Sum,
      ignore_name_scope=False,
      process_set=global_process_set,
      prescale_factor=1.0,
      postscale_factor=1.0,
  ):
      """An op which sums an input tensor over all the Horovod processes, then
      scatters the result across all the Horovod processes.
  
      The reduction operations are keyed by the name of the op. Reductions are
      performed across tensors in the same list position. The tensor type and
      shape must be the same on all Horovod processes for tensors sharing
      positions in the input tensor list. The reduction will not start until all
      processes are ready to send and receive the tensors.
  
      Returns:
        A list of tensors of the same rank and type as those in `tensors`.
        For each returned tensor the shape is identical to the corresponding
        input shape, except for the first dimension, which will be divided across
        the different Horovod processes.
      """
      if name is None and not _executing_eagerly():
          name = _normalize_name(
              "HorovodGroupedReducescatter_%s_%s"
              % (tensors[0].name, tensors[-1].name)
          )
      return MPI_LIB.horovod_grouped_reducescatter(
          tensors,
          name=name,
          reduce_op=op,
          ignore_name_scope=ignore_name_scope,
          process_set_id=process_set.process_set_id,
          prescale_factor=prescale_factor,
          postscale_factor=postscale_factor,
      )
  
imports: import re
  import tensorflow
  from tensorflow.python.framework import load_library
  from tensorflow.python.framework import ops
  from tensorflow.python.platform import resource_loader
  from horovod.common.util import check_installed_version, get_ext_suffix, get_average_backwards_compatibility_fun, gpu_available, num_rank_is_power_2
  from horovod.common.basics import HorovodBasics
  from horovod.common.process_sets import _setup
  from horovod.common.process_sets import ProcessSet, global_process_set, add_process_set, remove_process_set, _temp_process_set_object
  from horovod.tensorflow.util import _executing_eagerly
label_desc: Use image node_id 20 for calling a global function with example usage: _grouped_reducescatter(tensors, name, op, ignore_name_scope, process_set, prescale_factor, postscale_factor) and returns: MPI_LIB