关于subprocess.CalledProcessError: Commandxxx returned non-zero exit status 1. 的问题--pytorch分布式训练问题

这篇具有很好参考价值的文章主要介绍了关于subprocess.CalledProcessError: Commandxxx returned non-zero exit status 1. 的问题--pytorch分布式训练问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.问题描述

我想跑一个模型的训练源代码时,就出现了这个问题,之前上网一顿查,发现并没有解决的办法。所说的也跟这个对不上。这个问题的本身是有关于pytorch分布使训练的问题。

 实际情况如下。

root@node02:~/data/zjx/others/DDPtry# python -m torch.distributed.launch --nproc_per_node 3 tryDDP_1.py 
*****************************************
Setting OMP_NUM_THREADS environment variable for each process to be 1 in default, to avoid your system being overloaded, please further tune the variable for optimal performance in your application as needed. 
*****************************************
Files already downloaded and verified
Files already downloaded and verified
Files already downloaded and verified
Traceback (most recent call last):
  File "tryDDP_1.py", line 92, in <module>
Traceback (most recent call last):
  File "tryDDP_1.py", line 92, in <module>
Traceback (most recent call last):
  File "tryDDP_1.py", line 92, in <module>
    b = c
NameError: name 'c' is not defined
    b = c
    b = c
NameError: name 'c' is not defined
NameError: name 'c' is not defined
Traceback (most recent call last):
  File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/usr/local/lib/python3.6/dist-packages/torch/distributed/launch.py", line 263, in <module>
    main()
  File "/usr/local/lib/python3.6/dist-packages/torch/distributed/launch.py", line 259, in main
    cmd=cmd)
subprocess.CalledProcessError: Command '['/usr/bin/python', '-u', 'tryDDP_1.py', '--local_rank=2']' returned non-zero exit status 1.

2.问题的解决

出现这个问题时,解决问题的关键不在于这个问题本身,而是在于这个问题前面所报出的问题。

正因为原代码中的某处或者某几处错误,从而导致分布使训练不能进行,所以都会报出这个错误。从上面的实际举例可以看出,在这个错误之前,还有个错误,如下图画框所示

subprocess.calledprocesserror,pytorch,深度学习,人工智能

 当然,这个错误是我故意设计的,就是为了举例说明出现这个问题的来源,因为我在代码中加了一处错误,如下图划线处所示。

subprocess.calledprocesserror,pytorch,深度学习,人工智能

 正式因为代码中出现的这处错误,导致分布式训练不能顺利进行,所以才会返回如

subprocess.CalledProcessError: Command '['/usr/bin/python', '-u', 'tryDDP_1.py', '--local_rank=2']' returned non-zero exit status 1.

这样的错误。所以,解决这个问题的关键是把这个错误之前的所有报错都解决掉,之后就可以顺利进行分布式训练了。

如下所示,(下面将b=c 这个错误去掉)

subprocess.calledprocesserror,pytorch,深度学习,人工智能

 然后运行,如下图所示,可以正常运行了

subprocess.calledprocesserror,pytorch,深度学习,人工智能文章来源地址https://www.toymoban.com/news/detail-616033.html

到了这里,关于关于subprocess.CalledProcessError: Commandxxx returned non-zero exit status 1. 的问题--pytorch分布式训练问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • [VoteNet]报错出现错误“subprocess.CalledProcessError: Command ‘[‘ninja‘, ‘-v‘]‘ returned nonzero exit state

    尝试运行votenet baseline 服务器环境: NVIDIA RTX3090 Pytorch 1.8.1 CUDA11.1 在run demo的时候尝试对pointnet2的一众cpp文件进行编译,运行python setup.py install时出现报错,报错信息为‘ubprocess.CalledProcessError: Command ‘[‘ninja‘, ‘-v‘]‘ returned nonzero exit state 1’ pytorch版本和源代码所使用的

    2024年02月13日
    浏览(37)
  • raise CalledProcessError(retcode, process.args,subprocess.CalledProcessError: Command ‘git tag‘

    yolov7报错解决方案 fatal: not a git repository (or any of the parent directories): .git Traceback (most recent call last):   File \\\"D:pythoncodehumanposeyolo3DPosedemoyolov7utilsgoogle_utils.py\\\", line 26, in attempt_download     assets = [x[\\\'name\\\'] for x in response[\\\'assets\\\']]  # release assets KeyError: \\\'assets\\\' During handling of the above e

    2024年02月03日
    浏览(42)
  • spconv1.2.1安装时出现subprocess.CalledProcessError错误的解决方法

    问题详述: 描述: 该问题是在你安装spconv1.0/1.2.1时,执行python setup.py bdist_wheel时,编译一半出现的问题。 可能1 :此问题说明spconv安装缺文件,从官方下载下来的spconv1.2.1,文件夹下的third_party/pybind11是空的,需要自己手动去下载。 pybind11链接:https://github.com/pybind/pybind11/t

    2024年02月09日
    浏览(41)
  • 【Error】Win10/Python3.9安装dlib报错:subprocess.CalledProcessError以及解决方法

    注意python3.9就选择cp39的dlib包,否则报错: ERROR: dlib-19.7.0-cp36-cp36m-win_amd64.whl is not a supported wheel on this platform. https://blog.csdn.net/DoubleJ2/article/details/115399326 显示 我没有安装Vc++,但是我已经安装好了 官网下载免费社区版,并且进入D盘cl命令后,确认已经安装 命令行找到cd D:vs

    2024年02月05日
    浏览(61)
  • stable diffusion 运行时报错: returned non-zero exit status 1.

    运行sh run.sh安装stable diffusion时报错:ImportError: cannot import name \\\'builder\\\' from \\\'google.protobuf.internal\\\' (stable-diffusion-webui/venv/lib/python3.8/site-packages/google/protobuf/internal/__init__.py) 原因:python版本过低,使用3.10 ubuntu安装python3.10: 重新安装venv: python3.10 -m venv venv 报错:Error: Command \\\'[\\\'stable

    2024年02月12日
    浏览(48)
  • python自带的venv创建虚拟环境报错Error: Command returned non-zero exit status 1.

    Windows 10 教育版64位 Python 3.6.3 今天使用 python 自带的 venv 使用如下的命令: 创建虚拟环境报错: Error: Command \\\'[\\\'E:\\\\Code\\\\Python\\\\Git\\\\test1\\\\aaa\\\\Scripts\\\\python.exe\\\', \\\'-Im\\\', \\\'ensurepip\\\', \\\'--upgrade\\\', \\\'--default-pip\\\']\\\' returned non-zero exit status 1.) 这个时候,回到你需要创建 venv 的路径,发现我的新环境

    2024年02月16日
    浏览(48)
  • 【LeetCode】1654:到家的最少跳跃次数的解题思路 & 关于力扣无法return的BUG的讨论

    有一只跳蚤的家在数轴上的位置 x 处。请你帮助它从位置 0 出发,到达它的家。 跳蚤跳跃的规则如下: 它可以 往前 跳恰好 a 个位置(即往右跳)。 它可以 往后 跳恰好 b 个位置(即往左跳)。 它不能 连续 往后跳 2 次。 它不能跳到任何 forbidden 数组中的位置。 跳蚤可以往

    2024年02月10日
    浏览(49)
  • python subprocess.run()、subprocess.Popen()、subprocess.check_output()(执行系统命令、启动新的进程、连接到子进程的输入/输出管道)

    Python的subprocess模块是用于创建和管理子进程的模块。它提供了一种在Python中调用外部命令的方式,可以执行系统命令、启动新的进程、连接到子进程的输入/输出管道等。 subprocess.run 运行指定的命令,并等待其完成。args参数是一个字符串或列表,表示要执行的命令和参数。

    2024年02月09日
    浏览(49)
  • subprocess.run方法

    subprocess.run 是 Python 中用于在程序中运行其他程序的方法。它是 Python 3.5 版本引入的,可以用来替代旧版本中的 subprocess.call 和 subprocess.check_call 等函数。 使用 subprocess.run 方法,你可以很方便地在 Python 中调用其他命令行程序,并且能够简单地获取命令的输出结果。此外,该方

    2024年02月12日
    浏览(34)
  • python之subprocess模块

    subprocess模块 Subprocess是一个功能强大的子进程管理模块,可以像Linux 系统中执行shell命令那样fork一个子进程执行外部的命令,subprocess 模块允许我们启动一个新进程,并连接到它们的输入/输出/错误管道,从而获取返回值。 使用subprocess模块的目的是用于替换os.system等一些旧的

    2024年02月10日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包