当前位置:   article > 正文

Pytorch:VSCode利用nn.DataParallel将模型计算涉及到的数据自动转移到GPU,并在指定的多个GPU上进行训练或调试_没有gpu怎么修改nn.dataparallel

没有gpu怎么修改nn.dataparallel

一、train.py

在训练阶段、验证、测试阶段添加代码:

  1. # whether use multi gpu:
  2. if self.args .multi_gpu:
  3. model = nn.DataParallel(model)
  4. else:
  5. model = model

使用 nn.DataParallel将model包装之后,各种数据在喂给模型之前如果在cpu上,会自动转移到GPU上,不需要手动将各个数据利用.cuda(),或.to('cuda')进行转移。

  1. import torch
  2. import config
  3. import argparse
  4. ...
  5. model = Mymodel()
  6. ...
  7. # whether use multi gpu:
  8. if self.args .multi_gpu:
  9. model = nn.DataParallel(model)
  10. else:
  11. model = model
  12. train()

二、修改launch.json(VSCode

  1. {
  2. // Use IntelliSense to learn about possible attributes.
  3. // Hover to view descriptions of existing attributes.
  4. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
  5. "version": "0.2.0",
  6. "configurations": [
  7. {
  8. "name": "Python: Current File",
  9. "type": "python",
  10. "request": "launch",
  11. "program": "${file}",
  12. "console": "integratedTerminal",
  13. "justMyCode": true
  14. }
  15. ]
  16. }

注销掉代码:

  1. // "program": "${file}",
  2. // "console": "integratedTerminal",

添加代码:

  1. "connect": {
  2. "host": "localhost",
  3. "port": 50678
  4. }
  1. {
  2. // 使用 IntelliSense 了解相关属性。
  3. // 悬停以查看现有属性的描述。
  4. // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
  5. "version": "0.2.0",
  6. "configurations": [
  7. {
  8. "name": "Python: Current File",
  9. "type": "python",
  10. "request": "attach",
  11. // "program": "${file}",
  12. // "console": "integratedTerminal",
  13. "justMyCode": false,
  14. "connect": {
  15. "host": "localhost",
  16. "port": 50678
  17. }
  18. }
  19. ]
  20. }

 三、train.sh

利用debugpy调试,设定调试用的GPU标号为2

  1. #!/usr/bin/env bash
  2. #修改gpu编号
  3. export CUDA_VISIBLE_DEVICES=2,3
  4. python3 -m debugpy --listen 50678 --wait-for-client train.py

四、在vscode的terminal运行:

sh -x train.sh

运行完成shell脚本后停在python脚本调用的入口,点击F5进入python调试。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/547569
推荐阅读
相关标签
  

闽ICP备14008679号