in optimum/executorch/stats.py [0:0]
def __init__(self):
# Scaling factor for timestamps - in ms
self.SCALING_FACTOR_UNITS_PER_SECOND = 1000
# Time stamps for different execution stages
self.model_load_start_ms = 0
self.model_load_end_ms = 0
self.inference_start_ms = 0
self.token_encode_end_ms = 0
self.model_execution_start_ms = 0
self.model_execution_end_ms = 0
self.prompt_eval_end_ms = 0
self.first_token_ms = 0
self.inference_end_ms = 0
# Sampling time tracking
self.aggregate_sampling_time_ms = 0
self._aggregate_sampling_timer_start_timestamp = 0
# Token counts
self.num_prompt_tokens = 0
self.num_generated_tokens = 0