diff --git a/internlm/utils/storage_manager.py b/internlm/utils/storage_manager.py index 89f8023..de2e77b 100644 --- a/internlm/utils/storage_manager.py +++ b/internlm/utils/storage_manager.py @@ -512,8 +512,10 @@ class LocalClient(StorageClient): def sync_upload_fileobj(fp: str, saved_obj=None, **kwargs): assert saved_obj is not None fp_dirname = os.path.dirname(fp) - if not os.path.exists(fp_dirname): - os.makedirs(fp_dirname, exist_ok=True) + if gpc.get_global_rank() == 0: + if not os.path.exists(fp_dirname): + os.makedirs(fp_dirname, exist_ok=True) + dist.barrier() torch.save(saved_obj, fp, **kwargs) @staticmethod