class_docstr: Magics related to code execution, debugging, profiling, etc.
  
      
docstr: Run function `run` and print timing information.
  
  Parameters
  ----------
  run : callable
      Any callable object which takes no argument.
  nruns : int
      Number of times to execute `run`.
docstr_tok: ["Run","function","`","run","`","and","print","timing","information",".","Parameters","--","--","--","--","--","run",":","callable","Any","callable","object","which","takes","no","argument",".","nruns",":","int","Number","of","times","to","execute","`","run","`","."]
code: def _run_with_timing(run, nruns):
      """
      Run function `run` and print timing information.
  
      Parameters
      ----------
      run : callable
          Any callable object which takes no argument.
      nruns : int
          Number of times to execute `run`.
  
      """
      twall0 = time.time()
      if nruns == 1:
          t0 = clock2()
          run()
          t1 = clock2()
          t_usr = t1[0] - t0[0]
          t_sys = t1[1] - t0[1]
          print("\nIPython CPU timings (estimated):")
          print("  User   : %10.2f s." % t_usr)
          print("  System : %10.2f s." % t_sys)
      else:
          runs = range(nruns)
          t0 = clock2()
          for nr in runs:
              run()
          t1 = clock2()
          t_usr = t1[0] - t0[0]
          t_sys = t1[1] - t0[1]
          print("\nIPython CPU timings (estimated):")
          print("Total runs performed:", nruns)
          print("  Times  : %10s   %10s" % ("Total", "Per run"))
          print(
              "  User   : %10.2f s, %10.2f s." % (t_usr, t_usr / nruns)
          )
          print(
              "  System : %10.2f s, %10.2f s." % (t_sys, t_sys / nruns)
          )
      twall1 = time.time()
      print("Wall time: %10.2f s." % (twall1 - twall0))
  
imports: from __future__ import print_function
  from __future__ import absolute_import
  import ast
  import bdb
  import gc
  import itertools
  import os
  import sys
  import time
  import timeit
  from pdb import Restart
  from IPython.core import oinspect
  from IPython.core import magic_arguments
  from IPython.core import page
  from IPython.core.error import UsageError
  from IPython.core.macro import Macro
  from IPython.core.magic import Magics, magics_class, line_magic, cell_magic, line_cell_magic, on_off, needs_local_scope
  from IPython.testing.skipdoctest import skip_doctest
  from IPython.utils import py3compat
  from IPython.utils.py3compat import builtin_mod, iteritems, PY3
  from IPython.utils.contexts import preserve_keys
  from IPython.utils.capture import capture_output
  from IPython.utils.ipstruct import Struct
  from IPython.utils.module_paths import find_mod
  from IPython.utils.path import get_py_filename, shellglob
  from IPython.utils.timing import clock, clock2
  from warnings import warn
  from logging import error
label_desc: Use image node_id 12 for calling the ExecutionMagics obj's underlying member method code with example usage: obj._run_with_timing(run, nruns) without return types