MCPcopy Create free account
hub / github.com/OpenGVLab/HumanBench / __init__

Method __init__

PATH/core/solvers/solver_multitask_dev.py:581–661  ·  view source on GitHub ↗
(self, C_train, C_test)

Source from the content-addressed store, hash-verified

579
580class TesterMultiTaskDev(SolverMultiTaskDev):
581 def __init__(self, C_train, C_test):
582 torch.cuda.empty_cache()
583
584 train_config = edict(C_train.config['common'])
585 ginfo = C_train.ginfo
586 config = train_config
587
588 if C_test.config.get('common') is not None:
589 recursive_update(config, C_test.config.get('common'))
590 config = edict(config)
591 if 'out_dir' in config:
592 self.out_dir = config['out_dir'] + 'test_results/'
593 else:
594 self.out_dir = "./test_results/"
595
596 if 'expname' in config:
597 self.tb_path = '{}events/{}'.format(self.out_dir, config['expname'])
598 self.ckpt_path = '{}checkpoints/{}'.format(self.out_dir, config['expname'])
599 self.logs_path = '{}logs/{}'.format(self.out_dir, config['expname'])
600 else:
601 save_path = config.get('save_path', os.path.dirname(os.path.abspath(C_train.config_file)))
602 self.save_path = save_path
603 self.tb_path = '{}/test_results/events'.format(save_path)
604 self.ckpt_path = '{}/test_results/checkpoints'.format(save_path)
605 self.logs_path = '{}/test_results/logs'.format(save_path)
606 if C_train.rank == 0:
607 os.makedirs(self.tb_path, exist_ok=True)
608 os.makedirs(self.ckpt_path, exist_ok=True)
609 os.makedirs(self.logs_path, exist_ok=True)
610 # self.tb_logger = SummaryWriter(self.tb_path)
611 project_name = config.get('project_name', os.path.dirname(C_train.config_file).split('/')[-1])
612 self.tb_logger = SummaryWriter(log_dir=self.tb_path,name=C_train.config['expname'],project=project_name, overwrite_last_training=True)
613
614 else:
615 while not os.path.exists(self.logs_path):
616 time.sleep(1)
617
618 if ginfo.task_rank == 0:
619 assert C_train.rank == 0, "there shall be only one group"
620 self.logger = create_logger('global_logger', '{}/log_task_{}.txt'.format(self.logs_path, ginfo.task_id))
621
622 self.sync = config.get('sync', True)
623 self.C = C_train
624
625 self.config = config
626 self.ginfo = ginfo
627 # change tensor .cuda
628 change_tensor_cuda()
629
630 self.tmp = edict()
631
632 ## random seed setting
633 rng = np.random.RandomState(self.config.get('random_seed', 0))
634 self.randomseed_pool = rng.randint(999999, size=config.max_iter)
635
636 ### VVV deterministic measures VVV
637
638 if self.config.get('deterministic', False):

Callers

nothing calls this directly

Calls 5

create_loggerFunction · 0.90
change_tensor_cudaFunction · 0.90
getMethod · 0.80
WorkerInitClass · 0.70
infoMethod · 0.45

Tested by

no test coverage detected