出现问题:

再跑stdc官方给出代码时,使用多卡加载pretrained模型时,卡0上比卡123多三个进程,卡123都只有一个进程,中断训练后卡0全部进程都中断。即卡0在正常训练时比卡123多占用显存。(使用nvidia-smi命令查看)

这里发现问题存在于load模型的时候,直接load的话会导致参数加载到之前保存模型的device上(大部分情况下应该是只用cuda0去保存),这里可以将load函数加一个参数为map_location解决:

model_weights = torch.load(path, map_location='cpu')

改完之后发现仍旧存在这个问题

后来查看代码的时候发现,在网络的class内部,init_weight的时候也有一个load函数。这个函数内部无map_location参数。

因此,加入这个参数后如果卡0仍旧多占用显存和进程的时候,可能是某个隐藏的类别内部存在torch.load函数。多找找加上map_location参数即可使得全部的卡占用相同显存。

解决多卡加载预训练模型时,卡0总会比其他卡多占用显存,多卡占用显存不均相关推荐

  1. 解决HuggingFace加载预训练模型时报错TypeError: expected str, bytes or os.PathLike object, not NoneType

    完整报错: TypeError: expected str, bytes or os.PathLike object, not NoneType 解决方法 检查下载的组件: 步骤1:完整的下载组件,包 ...

  2. pytorch加载预训练模型_Pytorch-Transformers 1.0发布,支持六个预训练框架,含27个预训练模型...

    AI 科技评论按:刚刚在Github上发布了开源 Pytorch-Transformers 1.0,该项目支持BERT, GPT, GPT-2, Transfo-XL, XLNet, XLM等,并包含 ...

  3. pytorch:加载预训练模型(多卡加载单卡预训练模型,多GPU,单GPU)

    在pytorch加载预训练模型时,可能遇到以下几种情况. 分为以下几种 在pytorch加载预训练模型时,可能遇到以下几种情况. 1.多卡训练模型加载单卡预训练模型 2. 多卡训练模型加载多卡预训练模 ...

  4. keras冻结_Keras 实现加载预训练模型并冻结网络的层

    在解决一个任务时,我会选择加载预训练模型并逐步fine-tune.比如,分类任务中,优异的深度学习网络有很多. ResNet, VGG, Xception等等... 并且这些模型参数已经在imagen ...

  5. 加载预训练模型时报错 KeyError: param ‘initial_lr‘ is not specified in param_groups[0]

    在加载预训练模型继续训练时,程序报错:KeyError: "param 'initial_lr' is not specified in param_groups[0] when resum ...

  6. pytorch加载预训练模型遇到的问题:KeyError: ‘bn1.num_batches_tracked‘

    问题 最近在使用pytorch1.0加载resnet预训练模型时,遇到的一个问题,在此记录一下.     KeyError: 'layer1.0.bn1.num_batches_tracked' 其实 ...

  7. Pytorch网络模型权重初始化、保存与加载模型、加载预训练模型、按需设置学习率

    前言 在我们对神经网络模型进行训练时,往往需要对模型进行初始化或者加载预训练模型.本文将对模型的权重初始化与加载预训练模型做一个学习记录,以便后续查询使用. 权重初始化 常见的初始化方法 PyTorc ...

  8. MXNet快速入门之训练加载预训练模型(四)

    前言 在前面几篇文章中详细介绍了MXNet的一些特点以及入门基础知识,本篇文章主要介绍如何使用MXNet来训练模型.加载模型进行预测.预训练模型以及MXNet中GPU使用的相关知识. 在介绍训练模型之 ...

  9. Caffe2教程实例,加载预训练模型

    Caffe2教程实例,加载预训练模型 概述 本教程使用模型库中的预训练模型squeezenet 里分类我们自己的图片.我们需要提供要分类图片的路径或者URL信息作为输入.了解ImageNet对象代码可 ...

最新文章

  1. 部门名称部门结构叠用_DYT|部门名称创意设计比赛,你pick哪一个?
  2. Cocos2dx-如何利用NDK分析崩溃日志
  3. C/C++ _strlwr_s 函数 – 字符串大写转小写- C语言零基础入门教程
  4. nginx重启、关闭
  5. ​芯片大神,英特尔、AMD、特斯拉前首席芯片架构师 Jim Keller 加盟 AI 初创公司...
  6. 《JQuery 能干点啥~》第7讲 层级选择器_2
  7. Lesson 2 Gradient Desent
  8. java算术表达式求值-中缀表达式转后缀表达式
  9. java Relative Path and absolute
  10. 2021创新创业基础(李家华)100分期末考试答案
  11. 度度熊的午饭时光[2017百度之星资格赛 1004]
  12. 中柏平板bios对照表_BIOS详解及中英文对照表
  13. Undefined function or variable. The first assignment to a local variable determin its class.
  14. 饭饭科普46 — 为什么出现区块链
  15. UVM糖果爱好者教程 - 31.provides_responses?
  16. LDAP简介及Java、客户端连接
  17. 各航空公司的网址和电话
  18. 如何把一组计算机做成云,怎样才能把旧电脑变成云电脑呢?
  19. AOE图,最早活动时间最晚活动时间,关键路径关键节点
  20. 爬了链家二手房数据来告诉你深圳房价到底多恐怖!

热门文章

  1. 65Z5的芯片,65Z5三极管,稳压输出3V的IC资料
  2. python k线顶分型_【交易技术】K线战法之『顶底分型』
  3. C# 批量修改文件夹(包含子文件)的后缀名
  4. 一个字节有多少位(๑′ᴗ‵๑)
  5. 虚拟来电 - 伪装来电工具
  6. 透过现象看本质:共享单车之摩拜和ofo的工作原理分析
  7. 2017高考计算机考试大纲,2017高考全国统一考试大纲及考试说明
  8. 21.2.22 T2 多米诺骨牌 真·详解
  9. 时间改变一切—兄弟连IT教育
  10. 上海 python 培训 兄弟连