美文网首页
[mmdetection]tools/dist_train.sh

[mmdetection]tools/dist_train.sh

作者: Joyner2018 | 来源:发表于2023-05-03 15:01 被阅读0次
    #!/usr/bin/env bash
    # [mmdetection]tools/dist_train.sh
    
    CONFIG=$1 # 命令输入的文件后面的第一个参数
    GPUS=$2 # 命令输入文件后面的的第2个参数
    NNODES=${NNODES:-1} #如果NNODES为空,那个返回1       表示分布中有多少个主机
    NODE_RANK=${NODE_RANK:-0} #如果NODE_RANK为空,返回0。 表示分布式训练中,当前主机的序号
    PORT=${PORT:-29500}         #如果PORT为空,返回29500   表示master节点的端口号
    MASTER_ADDR=${MASTER_ADDR:-"127.0.0.1"} #master节点的ip地址,也就是也就是0号主机上的IP地址
    
    PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ # 表示文件的上一级目录加上环境中
    python -m torch.distributed.launch \ #调用torch.distributed.launch 分布式下训练模块
        --nnodes=$NNODES \  #主机数目
        --node_rank=$NODE_RANK \ # 当前主机的序号
        --master_addr=$MASTER_ADDR \ # 0号主机的ip地址
        --nproc_per_node=$GPUS \ # 一个节点中显卡的数量
        --master_port=$PORT \ # 0号主机的端口号
        $(dirname "$0")/train.py \ #训练文件加载
        $CONFIG \# 配置文件
        --launcher pytorch ${@:3}
    
    ## --launcher pytorch 参数则是指定使用 PyTorch 默认的启动器。
    ## ${@:3} 表示取 $@ 中从第三个参数开始到最后一个参数的子列表。
    ## $@ 表示所有传递给脚本的参数列表
    

    相关文章

      网友评论

          本文标题:[mmdetection]tools/dist_train.sh

          本文链接:https://www.haomeiwen.com/subject/ctktsdtx.html