class_docstr: Runtime metrics for a PhysicalOperator.
  
  Metrics are updated dynamically during the execution of the Dataset.
  This class can be used for either observablity or scheduling purposes.
  
  DO NOT modify the fields of this class directly. Instead, use the provided
  callback methods.
class_docstr_tok: ["Runtime","metrics","for","a","PhysicalOperator",".","Metrics","are","updated","dynamically","during","the","execution","of","the","Dataset",".","This","class","can","be","used","for","either","observablity","or","scheduling","purposes",".","DO","NOT","modify","the","fields","of","this","class","directly",".","Instead",",","use","the","provided","callback","methods","."]
docstr: Callback when the operator submits a task.
docstr_tok: ["Callback","when","the","operator","submits","a","task","."]
code: def on_task_submitted(self, task_index: int, inputs: RefBundle):
      """Callback when the operator submits a task."""
      self.num_tasks_submitted += 1
      self.num_tasks_running += 1
      self.bytes_inputs_of_submitted_tasks += inputs.size_bytes()
      self._running_tasks[task_index] = RunningTaskInfo(inputs, 0, 0)
  
imports: from dataclasses import dataclass, field, fields
  from typing import TYPE_CHECKING, Any, Dict, Optional
  import ray
  from ray.data._internal.execution.interfaces.ref_bundle import RefBundle
  from ray.data._internal.memory_tracing import trace_allocation
label_desc: Use image node_id 13 for calling the OpRuntimeMetrics obj's underlying member method code with example usage: obj.on_task_submitted(task_index, inputs) without return types