class_docstr: Hook to profile a model and to show model runtime information, such as
      the time breakdown in milliseconds of forward/backward pass.
docstr: Profile the forward pass.
docstr_tok: ["Profile","the","forward","pass","."]
code: def on_start(self, task) -> None:
      """Profile the forward pass."""
      logging.info("Profiling forward pass...")
      batchsize_per_replica = task.get_batchsize_per_replica()
      input_shape = task.base_model.input_shape
      p = profile(
          task.model,
          batchsize_per_replica=batchsize_per_replica,
          input_shape=input_shape,
          input_key=getattr(task.base_model, "input_key", None),
      )
      logging.info(summarize_profiler_info(p))
  
file_path: ClassyVision/classy_vision/hooks/profiler_hook.py
imports: import logging
  from typing import Any, Dict
  from classy_vision.generic.profiler import profile, summarize_profiler_info
  from classy_vision.hooks import register_hook
  from classy_vision.hooks.classy_hook import ClassyHook
label_desc: Use image node_id 1 for calling the ProfilerHook obj's underlying member method code with example usage: obj.on_start(task) without return types