class_docstr: Wraps :tf_main:`tf.Session <compat/v1/Session>`.
  
  This allows us to use our transformed `Graph` and our `Remapper`
  on our cluster.
docstr: Wrapped Session.run.
docstr_tok: ["Wrapped","Session.run","."]
code: def run(
      self, fetches, feed_dict=None, options=None, run_metadata=None
  ):
      """Wrapped Session.run."""
      autodist.autodist.get_default_autodist().is_built()
      _options = get_default_run_options()
      if options:
          _options.MergeFrom(
              options
          )  # options merges (while overwrites) into RUN_OPTIONS
      is_tracing = _options.trace_level > config_pb2.RunOptions.NO_TRACE
      if not run_metadata and is_tracing:
          run_metadata = config_pb2.RunMetadata()
      with self._remapper.as_default():
          res = super(WrappedSession, self).run(
              fetches,
              feed_dict=feed_dict,
              options=_options,
              run_metadata=run_metadata,
          )
      if is_tracing:
          _log_timeline(run_metadata)
      return res
  
file_path: autodist/autodist/runner.py
imports: import hashlib
  import os
  from tensorflow.core.protobuf import config_pb2, rewriter_config_pb2
  from tensorflow.python.client import timeline, session
  import autodist.autodist
  import autodist.const
  from autodist.const import ENV, MAX_INT32
  from autodist.utils import logging
label_desc: Use image node_id 3 for calling the WrappedSession obj's underlying member method code with example usage: obj.run(fetches, feed_dict, options, run_metadata) and returns: res