class_docstr: Represents a benchmark "run", which can be executed by calling the run()
  method, and results are saved as BenchmarkedResult instances in the results
  list member.
code: def __init__(
      self,
      input_dataframe,
      construct_graph_func,
      algo_func_param_list,
      algo_validator_list=None,
  ):
      self.input_dataframe = input_dataframe
  
      if type(construct_graph_func) is tuple:
          (
              construct_graph_func,
              self.construct_graph_func_args,
          ) = construct_graph_func
      else:
          self.construct_graph_func_args = None
  
      # Create benchmark instances for each algo/func to be timed.
      # FIXME: need to accept and save individual algo args
      self.construct_graph = benchmark(construct_graph_func)
  
      # add starting node to algos: BFS and SSSP
      # FIXME: Refactor BenchmarkRun __init__ because all the work
      # done below should be done elsewhere
      for i, algo in enumerate(algo_func_param_list):
          if benchmark(algo).name in [
              "bfs",
              "sssp",
              "uniform_neighbor_sample",
          ]:
              param = {}
              param["start"] = self.input_dataframe["src"].head()[0]
              if benchmark(algo).name in ["uniform_neighbor_sample"]:
                  start = [param.pop("start")]
                  param["start_list"] = start
                  param["fanout_vals"] = [1]
              algo_func_param_list[i] = (algo,) + (param,)
  
      self.algos = []
      for item in algo_func_param_list:
          if type(item) is tuple:
              (algo, params) = item
          else:
              (algo, params) = (item, {})
          self.algos.append((benchmark(algo), params))
  
      self.validators = algo_validator_list or [None] * len(self.algos)
      self.results = []
  
file_path: cugraph/benchmarks/cugraph/standalone/benchmark.py
imports: import sys
  import time
  from functools import wraps
label_desc: Use image node_id 1 to create a new BenchmarkRun object  with example: obj = BenchmarkRun(input_dataframe, construct_graph_func, algo_func_param_list, algo_validator_list)