class_docstr: Benchmark definition
  
  Parameters
  ----------
  storage: Storage
      Instance of the storage to use
  
  name: str
      Name of the benchmark
  
  algorithms: list, optional
      Algorithms used for benchmark, and for each algorithm, it can be formats as below:
  
      - A `str` of the algorithm name
      - A `dict`, with only one key and one value, where key is the algorithm name and value is a dict for the algorithm config.
  
      Examples:
  
      >>> ["random", "tpe"]
      >>> ["random", {"tpe": {"seed": 1}}]
  
  targets: list, optional
      Targets for the benchmark, each target will be a dict with two keys.
  
      assess: list
          Assessment objects
      task: list
          Task objects
  
  executor: `orion.executor.base.BaseExecutor`, optional
      Executor to run the benchmark experiments
class_docstr_tok: ["Benchmark","definition","Parameters","--","--","--","--","--","storage",":","Storage","Instance","of","the","storage","to","use","name",":","str","Name","of","the","benchmark","algorithms",":","list",",","optional","Algorithms","used","for","benchmark",",","and","for","each","algorithm",",","it","can","be","formats","as","below",":","-","A","`","str","`","of","the","algorithm","name","-","A","`","dict","`",",","with","only","one","key","and","one","value",",","where","key","is","the","algorithm","name","and","value","is","a","dict","for","the","algorithm","config",".","Examples",":",">",">",">","[","``","random","''",",","``","tpe","''","]",">",">",">","[","``","random","''",",","{","``","tpe","''",":","{","``","seed","''",":","1","}","}","]","targets",":","list",",","optional","Targets","for","the","benchmark",",","each","target","will","be","a","dict","with","two","keys",".","assess",":","list","Assessment","objects","task",":","list","Task","objects","executor",":","`","orion.executor.base.BaseExecutor","`",",","optional","Executor","to","run","the","benchmark","experiments"]
docstr: Returns the current executor to use to run jobs in parallel
docstr_tok: ["Returns","the","current","executor","to","use","to","run","jobs","in","parallel"]
code: def executor(self):
      """Returns the current executor to use to run jobs in parallel"""
      if self._executor is None:
          self._executor_owner = True
          self._executor = executor_factory.create(
              orion.core.config.worker.executor,
              n_workers=orion.core.config.worker.n_workers,
              **orion.core.config.worker.executor_configuration,
          )
  
      return self._executor
  
imports: import copy
  import itertools
  import time
  from collections import defaultdict
  from tabulate import tabulate
  import orion.core
  from orion.algo.base import algo_factory
  from orion.client import create_experiment
  from orion.executor.base import executor_factory
  from orion.storage.base import BaseStorageProtocol
label_desc: Use image node_id 2 for calling the Benchmark obj's underlying member method code with example usage: obj.executor() and returns: self