pytorch将不同的卡的日志输出到不同的文件

import logging
import os
import torch.distributed as dist
from torch.distributed import init_process_group


def setup_logger(log_file):
    logger = logging.getLogger()
    logger.setLevel(logging.INFO)

    # Create file handler which logs even debug messages
    fh = logging.FileHandler(log_file)
    fh.setLevel(logging.INFO)

    # Create console handler with a higher log level
    ch = logging.StreamHandler()
    ch.setLevel(logging.WARNING)

    # Create formatter and add it to the handlers
    formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
    fh.setFormatter(formatter)
    ch.setFormatter(formatter)

    # Add the handlers to the logger
    logger.addHandler(fh)
    logger.addHandler(ch)
    return logger

if __name__ == "__main__":
    # Example log file: logs/log_rank_0.log, logs/log_rank_1.log, etc.
    # python -m torch.distributed.launch --nproc_per_node=4 test_data.py
    init_process_group(backend="nccl")
    rank = dist.get_rank()
    os.makedirs("logs", exist_ok=True)
    log_file = os.path.join("logs", f"log_rank_{rank}.log")
    logger = setup_logger(log_file)
    logger.info(f"Logging from rank {rank}")

然后命令行运行:

python -m torch.distributed.launch --nproc_per_node=4 test_data.py

结果展示:
在这里插入图片描述
其中一张卡的内容为:

2024-08-17 10:16:37,947 - root - INFO - Logging from rank 1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

农民小飞侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值