MCPcopy Create free account
hub / github.com/SooLab/CGFormer / setup_logger

Function setup_logger

utils/misc.py:263–294  ·  view source on GitHub ↗

setup logger for training and testing. Args: save_dir(str): location to save log file distributed_rank(int): device rank when multi-gpu environment filename (string): log save name. mode(str): log file write mode, `append` or `override`. default is `a`. Retur

(save_dir, distributed_rank=0, filename="log.txt", mode="a")

Source from the content-addressed store, hash-verified

261
262
263def setup_logger(save_dir, distributed_rank=0, filename="log.txt", mode="a"):
264 """setup logger for training and testing.
265 Args:
266 save_dir(str): location to save log file
267 distributed_rank(int): device rank when multi-gpu environment
268 filename (string): log save name.
269 mode(str): log file write mode, `append` or `override`. default is `a`.
270
271 Return:
272 logger instance.
273 """
274 loguru_format = (
275 "<green>{time:YYYY-MM-DD HH:mm:ss}</green> | "
276 "<level>{level: <8}</level> | "
277 "<cyan>{name}</cyan>:<cyan>{line}</cyan> - <level>{message}</level>")
278
279 logger.remove()
280 save_file = os.path.join(save_dir, filename)
281 if mode == "o" and os.path.exists(save_file):
282 os.remove(save_file)
283 # only keep logger in rank0 process
284 if distributed_rank == 0:
285 logger.add(
286 sys.stderr,
287 format=loguru_format,
288 level="INFO",
289 enqueue=True,
290 )
291 logger.add(save_file)
292
293 # redirect stdout/stderr to loguru
294 redirect_sys_output("INFO")
295
296
297def build_scheduler(config, optimizer, n_iter_per_epoch):

Callers 2

main_workerFunction · 0.90
mainFunction · 0.90

Calls 2

redirect_sys_outputFunction · 0.85
addMethod · 0.80

Tested by 1

mainFunction · 0.72