forked from mrq/DL-Art-School
Fix issue where eval was not being used by all ddp processes
This commit is contained in:
parent
60079a1572
commit
54bff35171
|
@ -257,10 +257,11 @@ class Trainer:
|
||||||
self.tb_logger.add_scalar('val_psnr', avg_psnr, self.current_step)
|
self.tb_logger.add_scalar('val_psnr', avg_psnr, self.current_step)
|
||||||
self.tb_logger.add_scalar('val_fea', avg_fea_loss, self.current_step)
|
self.tb_logger.add_scalar('val_fea', avg_fea_loss, self.current_step)
|
||||||
|
|
||||||
if len(self.evaluators) != 0 and self.current_step % opt['train']['val_freq'] == 0 and self.rank <= 0:
|
if len(self.evaluators) != 0 and self.current_step % opt['train']['val_freq'] == 0:
|
||||||
eval_dict = {}
|
eval_dict = {}
|
||||||
for eval in self.evaluators:
|
for eval in self.evaluators:
|
||||||
eval_dict.update(eval.perform_eval())
|
if eval.uses_all_ddp() or self.rank <= 0:
|
||||||
|
eval_dict.update(eval.perform_eval())
|
||||||
if self.rank <= 0:
|
if self.rank <= 0:
|
||||||
print("Evaluator results: ", eval_dict)
|
print("Evaluator results: ", eval_dict)
|
||||||
for ek, ev in eval_dict.items():
|
for ek, ev in eval_dict.items():
|
||||||
|
|
|
@ -11,6 +11,7 @@ class Evaluator:
|
||||||
self.model = model.module if hasattr(model, 'module') else model
|
self.model = model.module if hasattr(model, 'module') else model
|
||||||
self.opt = opt_eval
|
self.opt = opt_eval
|
||||||
self.env = env
|
self.env = env
|
||||||
|
self.uses_all_ddp = opt_get(opt_eval, ['uses_all_ddp'], True)
|
||||||
|
|
||||||
def perform_eval(self):
|
def perform_eval(self):
|
||||||
return {}
|
return {}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user