MCPcopy Create free account
hub / github.com/DanielShalam/BPA / log_every

Method log_every

utils.py:371–427  ·  view source on GitHub ↗
(self, iterable, print_freq, header=None)

Source from the content-addressed store, hash-verified

369 self.meters[name] = meter
370
371 def log_every(self, iterable, print_freq, header=None):
372 i = 0
373 if not header:
374 header = ''
375
376 start_time = time.time()
377 end = time.time()
378 iter_time = SmoothedValue(fmt='{avg:.6f}')
379 data_time = SmoothedValue(fmt='{avg:.6f}')
380 space_fmt = ':' + str(len(str(len(iterable)))) + 'd'
381 if torch.cuda.is_available():
382 log_msg = self.delimiter.join([
383 header,
384 '[{0' + space_fmt + '}/{1}]',
385 'eta: {eta}',
386 '{meters}',
387 'time: {time}',
388 'data: {data}',
389 'mem: {memory:.0f} '
390 'mem reserved: {memory_res:.0f} '
391 ])
392 else:
393 log_msg = self.delimiter.join([
394 header,
395 '[{0' + space_fmt + '}/{1}]',
396 'eta: {eta}',
397 '{meters}',
398 'time: {time}',
399 'data: {data}'
400 ])
401 MB = 1024.0 * 1024.0
402 for obj in iterable:
403 data_time.update(time.time() - end)
404 yield obj
405 iter_time.update(time.time() - end)
406 len_iterable = len(iterable)
407 if i % print_freq == 0 or i == len_iterable - 1:
408 eta_seconds = iter_time.global_avg * (len_iterable - i)
409 eta_string = str(datetime.timedelta(seconds=int(eta_seconds)))
410 if torch.cuda.is_available():
411 print(log_msg.format(
412 i, len_iterable, eta=eta_string,
413 meters=str(self),
414 time=str(iter_time), data=str(data_time),
415 memory=torch.cuda.memory_allocated() / MB,
416 memory_res=torch.cuda.memory_reserved() / MB))
417 else:
418 print(log_msg.format(
419 i, len_iterable, eta=eta_string,
420 meters=str(self),
421 time=str(iter_time), data=str(data_time)))
422 i += 1
423 end = time.time()
424 total_time = time.time() - start_time
425 total_time_str = str(datetime.timedelta(seconds=int(total_time)))
426 print('{} Total time: {} ({:.6f} s / it)'.format(
427 header, total_time_str, total_time / len(iterable)))

Callers 2

train_one_epochFunction · 0.95
eval_one_epochFunction · 0.95

Calls 2

updateMethod · 0.95
SmoothedValueClass · 0.85

Tested by

no test coverage detected