code: def timeme():
      print("--------------- timeit -----------------")
      print(
          f'py  ={timeit.Timer("py()", globals=globals()).timeit(number=1)}'
      )
      gc.collect()
      torch.cuda.empty_cache()
      print(
          f'cpp ={timeit.Timer("cpp()", globals=globals()).timeit(number=1)}'
      )
      gc.collect()
      torch.cuda.empty_cache()
      print(
          f'apex={timeit.Timer("apex()", globals=globals()).timeit(number=1)}'
      )
      gc.collect()
      torch.cuda.empty_cache()
  
file_path: H2O/h2o_flexgen/benchmark/third_party/DeepSpeed/tests/benchmarks/flatten_bench.py
imports: import argparse
  import gc
  import torch
  from torch._utils import _flatten_dense_tensors
  from deepspeed.ops.op_builder import UtilsBuilder
  from apex_C import flatten
  import cProfile
  import timeit
label_desc: Use image node_id 5 for calling a global function with example usage: timeme() without return types