docstr: Tests RNG/MirrorStrategy interaction #2.
  
  The user can create n independent RNGs outside strategy.scope(), where n
  is the number of replicas, and give one to each replica. The replicas can
  thus get different random-number streams.
docstr_tok: ["Tests","RNG\/MirrorStrategy","interaction","#","2",".","The","user","can","create","n","independent","RNGs","outside","strategy.scope","(",")",",","where","n","is","the","number","of","replicas",",","and","give","one","to","each","replica",".","The","replicas","can","thus","get","different","random-number","streams","."]
code: def testMirroredStratParaAsync(self):
      """Tests RNG/MirrorStrategy interaction #2.
  
      The user can create n independent RNGs outside strategy.scope(), where n
      is the number of replicas, and give one to each replica. The replicas can
      thus get different random-number streams.
      """
      shape = [3, 4]
      dtype = dtypes.int32
      gens = rng.get_global_generator().split(count=2)
      devices = ["cpu:0", "cpu:1"]
      strat = MirroredStrategy(devices=devices)
      # Use `PerReplica` to specify which `gen` is sent to which replica
      gens = dist_values.PerReplica([[g] for g in gens])
      with strat.scope():
  
          def f(gen):
              t1 = gen.uniform_full_int(shape=shape, dtype=dtype)
              t2 = gen.uniform_full_int(shape=shape, dtype=dtype)
              t = array_ops_stack.stack([t1, t2])
              return t
  
          results = strat.extended.call_for_each_replica(
              fn=f, args=gens
          )
          local_results = strat.experimental_local_results(results)
          self.assertAllEqual(2, len(local_results))
          self.assertAllDifferent(local_results)
  
imports: import functools
  import os
  from absl.testing import parameterized
  from tensorflow.python.checkpoint import checkpoint
  from tensorflow.python.compat import v2_compat
  from tensorflow.python.distribute import combinations
  from tensorflow.python.distribute import multi_process_runner
  from tensorflow.python.distribute import sharded_variable
  from tensorflow.python.distribute import strategy_combinations
  from tensorflow.python.distribute import values
  from tensorflow.python.distribute.coordinator import cluster_coordinator
  from tensorflow.python.distribute.mirrored_strategy import MirroredStrategy
  from tensorflow.python.eager import def_function
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import test_combinations
  from tensorflow.python.framework import test_util
  from tensorflow.python.module import module
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import array_ops_stack
  from tensorflow.python.ops import stateful_random_ops
  from tensorflow.python.platform import test
  from tensorflow.python.saved_model import load
  from tensorflow.python.saved_model import save
  from tensorflow.python.util import deprecation
label_desc: Use image node_id 4 for calling the GeneratorTest obj's underlying member method code with example usage: obj.testMirroredStratParaAsync() and returns: t