MCPcopy Create free account
hub / github.com/Kitware/COAT / log_every

Method log_every

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

Source from the content-addressed store, hash-verified

118 self.meters[name] = meter
119
120 def log_every(self, iterable, print_freq, header=None):
121 i = 0
122 if not header:
123 header = ""
124 start_time = time.time()
125 end = time.time()
126 iter_time = SmoothedValue(fmt="{avg:.4f}")
127 data_time = SmoothedValue(fmt="{avg:.4f}")
128 space_fmt = ":" + str(len(str(len(iterable)))) + "d"
129 if torch.cuda.is_available():
130 log_msg = self.delimiter.join(
131 [
132 header,
133 "[{0" + space_fmt + "}/{1}]",
134 "eta: {eta}",
135 "{meters}",
136 "time: {time}",
137 "data: {data}",
138 "max mem: {memory:.0f}",
139 ]
140 )
141 else:
142 log_msg = self.delimiter.join(
143 [
144 header,
145 "[{0" + space_fmt + "}/{1}]",
146 "eta: {eta}",
147 "{meters}",
148 "time: {time}",
149 "data: {data}",
150 ]
151 )
152 MB = 1024.0 * 1024.0
153 for obj in iterable:
154 data_time.update(time.time() - end)
155 yield obj
156 iter_time.update(time.time() - end)
157 if i % print_freq == 0 or i == len(iterable) - 1:
158 eta_seconds = iter_time.global_avg * (len(iterable) - i)
159 eta_string = str(datetime.timedelta(seconds=int(eta_seconds)))
160 if torch.cuda.is_available():
161 print(
162 log_msg.format(
163 i,
164 len(iterable),
165 eta=eta_string,
166 meters=str(self),
167 time=str(iter_time),
168 data=str(data_time),
169 memory=torch.cuda.max_memory_allocated() / MB,
170 )
171 )
172 else:
173 print(
174 log_msg.format(
175 i,
176 len(iterable),
177 eta=eta_string,

Callers 1

train_one_epochFunction · 0.95

Calls 3

updateMethod · 0.95
SmoothedValueClass · 0.85
printFunction · 0.85

Tested by

no test coverage detected