code: def _select_best_chunk_region(
      self, possible_chunk_regions, chunk_infos, mem_peak
  ):
      if self.stratge == "min_memory":
          best_region = self._select_min_memory_chunk_region(
              possible_chunk_regions, chunk_infos
          )
      elif self.stratge == "fit_memory":
          best_region = self._select_fit_memory_chunk_region(
              possible_chunk_regions, chunk_infos, mem_peak
          )
      else:
          raise RuntimeError()
      return best_region
  
file_path: colossalai/colossalai/autochunk/select_chunk.py
imports: from .estimate_memory import EstimateMemory
  from .reorder_graph import ReorderGraph
  from .trace_indice import TraceIndice
  from .utils import NodeMgr, is_non_compute_node
label_desc: Use image node_id 2 for calling the SelectChunk obj's underlying member method code with example usage: obj._select_best_chunk_region(possible_chunk_regions, chunk_infos, mem_peak) and returns: best_region