(ctx, model_fn_wrapper, dequeue_fn)
return (compile_op, dummy_predict_op, host_calls, scaffold,
          captured_predict_hooks.get())
Executes `model_fn_wrapper` multiple times on all TPU shards.
Executes `model_fn_wrapper` multiple times on all TPU shards.
Executes model_fn_wrapper multiple times on all TPU shards .
def _predict_on_tpu_system(ctx, model_fn_wrapper, dequeue_fn):
  """Executes `model_fn_wrapper` multiple times on all TPU shards."""
  (single_tpu_predict_step, host_calls, captured_scaffold_fn,
   captured_predict_hooks
  ) = model_fn_wrapper.convert_to_single_tpu_predict_step(dequeue_fn)

  def multi_tpu_predict_steps_on_single_shard():

    def cond(scalar_stopping_signal):
      return math_ops.logical_not(
          _StopSignals.should_stop(scalar_stopping_signal))

    inputs = [_StopSignals.NON_STOPPING_SIGNAL]
    outputs = training_loop.while_loop(
        cond, single_tpu_predict_step, inputs=inputs, name=b'loop')
    return outputs

  (compile_op, dummy_predict_op,) = tpu.split_compile_and_shard(
      multi_tpu_predict_steps_on_single_shard,
      inputs=[],
      num_shards=ctx.num_replicas,
      outputs_from_all_shards=False,
      device_assignment=ctx.device_assignment)

  dummy_predict_op = dummy_predict_op[0]
  scaffold = _get_scaffold(captured_scaffold_fn)
  return (compile_op, dummy_predict_op, host_calls, scaffold,
          captured_predict_hooks.get())
def _predict_on_tpu_system ( ctx , model_fn_wrapper , dequeue_fn ) : ( single_tpu_predict_step , host_calls , captured_scaffold_fn , captured_predict_hooks ) = model_fn_wrapper . convert_to_single_tpu_predict_step ( dequeue_fn ) def multi_tpu_predict_steps_on_single_shard ( ) : def cond ( scalar_stopping_signal ) : return math_ops . logical_not ( _StopSignals . should_stop ( scalar_stopping_signal ) ) inputs = [ _StopSignals . NON_STOPPING_SIGNAL ] outputs = training_loop . while_loop ( cond , single_tpu_predict_step , inputs = inputs , name = b'loop' ) return outputs ( compile_op , dummy_predict_op , ) = tpu . split_compile_and_shard ( multi_tpu_predict_steps_on_single_shard , inputs = [ ] , num_shards = ctx . num_replicas , outputs_from_all_shards = False , device_assignment = ctx . device_assignment ) dummy_predict_op = dummy_predict_op [ 0 ] scaffold = _get_scaffold ( captured_scaffold_fn ) return ( compile_op , dummy_predict_op , host_calls , scaffold , captured_predict_hooks . get ( ) )