MCPcopy Index your code
hub / github.com/MotrixLab/ViMoGen / Timer

Class Timer

trainer/base_trainer.py:356–384  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

354
355
356class Timer:
357
358 def __init__(
359 self,
360 name,
361 logger=None,
362 ):
363 self.name = name
364 self.start_time = None
365 self.end_time = None
366 self.logger = logger
367
368 @property
369 def elapsed_time(self):
370 return self.end_time - self.start_time
371
372 def __enter__(self):
373 torch.cuda.synchronize()
374 self.start_time = time()
375 return self
376
377 def __exit__(self, exc_type, exc_val, exc_tb):
378 torch.cuda.synchronize()
379 self.end_time = time()
380 msg = f'Elapsed time for {self.name}: {self.elapsed_time:.3f} s'
381 if self.logger is not None:
382 self.logger.info(msg, main_process_only=True)
383 else:
384 print(msg)
385
386
387# https://github.com/hpcaitech/Open-Sora/blob/main/opensora/utils/train_utils.py#L44

Callers 1

__init__Method · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected