MCPcopy
hub / github.com/hustvl/Vim / log_every

Method log_every

vim/utils.py:115–159  ·  view source on GitHub ↗
(self, iterable, print_freq, header=None)

Source from the content-addressed store, hash-verified

113 self.meters[name] = meter
114
115 def log_every(self, iterable, print_freq, header=None):
116 i = 0
117 if not header:
118 header = ''
119 start_time = time.time()
120 end = time.time()
121 iter_time = SmoothedValue(fmt='{avg:.4f}')
122 data_time = SmoothedValue(fmt='{avg:.4f}')
123 space_fmt = ':' + str(len(str(len(iterable)))) + 'd'
124 log_msg = [
125 header,
126 '[{0' + space_fmt + '}/{1}]',
127 'eta: {eta}',
128 '{meters}',
129 'time: {time}',
130 'data: {data}'
131 ]
132 if torch.cuda.is_available():
133 log_msg.append('max mem: {memory:.0f}')
134 log_msg = self.delimiter.join(log_msg)
135 MB = 1024.0 * 1024.0
136 for obj in iterable:
137 data_time.update(time.time() - end)
138 yield obj
139 iter_time.update(time.time() - end)
140 if i % print_freq == 0 or i == len(iterable) - 1:
141 eta_seconds = iter_time.global_avg * (len(iterable) - i)
142 eta_string = str(datetime.timedelta(seconds=int(eta_seconds)))
143 if torch.cuda.is_available():
144 print(log_msg.format(
145 i, len(iterable), eta=eta_string,
146 meters=str(self),
147 time=str(iter_time), data=str(data_time),
148 memory=torch.cuda.max_memory_allocated() / MB))
149 else:
150 print(log_msg.format(
151 i, len(iterable), eta=eta_string,
152 meters=str(self),
153 time=str(iter_time), data=str(data_time)))
154 i += 1
155 end = time.time()
156 total_time = time.time() - start_time
157 total_time_str = str(datetime.timedelta(seconds=int(total_time)))
158 print('{} Total time: {} ({:.4f} s / it)'.format(
159 header, total_time_str, total_time / len(iterable)))
160
161
162def _load_checkpoint_for_ema(model_ema, checkpoint):

Callers 2

train_one_epochFunction · 0.95
evaluateFunction · 0.95

Calls 3

updateMethod · 0.95
SmoothedValueClass · 0.85
printFunction · 0.85

Tested by

no test coverage detected