diff --git a/ppcls/engine/engine.py b/ppcls/engine/engine.py index 7f04221c8664e9b8a7a7c3624d550c044409ddce..0900b472bd2042a9ac771c60d2b64a1888fda5fa 100644 --- a/ppcls/engine/engine.py +++ b/ppcls/engine/engine.py @@ -71,7 +71,7 @@ class Engine(object): self.output_dir = self.config['Global']['output_dir'] log_file = os.path.join(self.output_dir, self.config["Arch"]["name"], f"{mode}.log") - init_logger(name='root', log_file=log_file) + init_logger(log_file=log_file) print_config(config) # init train_func and eval_func @@ -107,10 +107,11 @@ class Engine(object): self.scale_loss = 1.0 self.use_dynamic_loss_scaling = False if self.amp: - AMP_RELATED_FLAGS_SETTING = { - 'FLAGS_cudnn_batchnorm_spatial_persistent': 1, - 'FLAGS_max_inplace_grad_add': 8, - } + AMP_RELATED_FLAGS_SETTING = {'FLAGS_max_inplace_grad_add': 8, } + if paddle.is_compiled_with_cuda(): + AMP_RELATED_FLAGS_SETTING.update({ + 'FLAGS_cudnn_batchnorm_spatial_persistent': 1 + }) paddle.fluid.set_flags(AMP_RELATED_FLAGS_SETTING) if "class_num" in config["Global"]: diff --git a/ppcls/static/train.py b/ppcls/static/train.py index 9c03598be96ec00e9d7198bc6d2231ed805dc801..075a0bdd03289e242d739b8eb43741c71eb0e876 100644 --- a/ppcls/static/train.py +++ b/ppcls/static/train.py @@ -71,7 +71,7 @@ def main(args): log_file = os.path.join(global_config['output_dir'], config["Arch"]["name"], f"{mode}.log") - init_logger(name='root', log_file=log_file) + init_logger(log_file=log_file) print_config(config) if global_config.get("is_distributed", True): diff --git a/ppcls/utils/logger.py b/ppcls/utils/logger.py index d4faaa9b0cd77b6038b40277cc62b4c6981f2da4..bc8de364091e9b56dafdcffa4475f7f225306e1b 100644 --- a/ppcls/utils/logger.py +++ b/ppcls/utils/logger.py @@ -22,7 +22,7 @@ import paddle.distributed as dist _logger = None -def init_logger(name='root', log_file=None, log_level=logging.INFO): +def init_logger(name='ppcls', log_file=None, log_level=logging.INFO): """Initialize and get a logger by name. If the logger has not been initialized, this method will initialize the logger by adding one or two handlers, otherwise the initialized logger will @@ -59,6 +59,7 @@ def init_logger(name='root', log_file=None, log_level=logging.INFO): _logger.setLevel(log_level) else: _logger.setLevel(logging.ERROR) + _logger.propagate = False def log_at_trainer0(log):