位置: IT常识 - 正文

Pytorch训练过程中出现RuntimeError: falseINTERNAL ASSERT FAILED... Couldn‘t open shared file mapping...(pytorch训练函数)

编辑:rootadmin
Pytorch训练过程中出现RuntimeError: falseINTERNAL ASSERT FAILED... Couldn‘t open shared file mapping...

推荐整理分享Pytorch训练过程中出现RuntimeError: falseINTERNAL ASSERT FAILED... Couldn‘t open shared file mapping...(pytorch训练函数),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:pytorch训练过程中逐渐增加训练数据,pytorch训练过程中 内存缓慢增长,pytorch 训练过程,pytorch训练过程中cpu内存占满,pytorch训练过程中 内存缓慢增长,pytorch训练过程中内存一直慢慢增长直到爆,pytorch训练过程查看,pytorch训练过程中cpu内存占满,内容如对您有帮助,希望把文章链接给更多的朋友!

一句话:换成pytorch1.8。

一、问题描述

今天跑一个开源的模型跑到第9个epoch时报错,如下:

RuntimeError: falseINTERNAL ASSERT FAILED at "..\\aten\\src\\ATen\\MapAllocator.cpp":135,please report a bug to PyTorch.Couldn't open shared file mapping: <000002043F0A2562>, error code: <1455>二、寻找解决方案

遂搜索,同类问题比较少,有一个博客讲到是显卡性能问题。于是我尝试大幅降低batch_size和works,又跑了一遍,这次第3个epoch就报了同样的错误(我跑一个epoch要一小时)。 这时我就奇怪了,降低了对配置的要求(顺便提一下我用的3050Ti),报错来的更快了,这怎么解释?

后来我又到PyTorch的github主页上看有没有人提交过相似的issue,确实有一个:https://github.com/pytorch/pytorch/issues/67864,讨论的时间比较久。 原来这个问题一般在pytorch1.10版本中出现(同时在更高的版本中不保证不出现),如果将版本回滚到1.8,就不会出现。由于这个问题的出现太随机了,没有规律可循,这帮人一直没有能够得到一个稳定的复现,所以不好修。

因此现阶段的一个可行方案就是将pytorch的版本回到1.8。

三、解决问题

这里我记录了我的解决过程,其实就是安装个pytorch1.8。 (1)通过conda创建一个新的环境,我使用了python3.6

conda activate base #一定要先回到base环境下conda create --name [你的环境名] python=3.6conda activate [你的环境名]

(2)【非必要】由于在包略多的环境中conda的索引时间太长了,体验极差,solving environment要转个一小时,我推荐使用mamba替换conda

conda install mambaPytorch训练过程中出现RuntimeError: falseINTERNAL ASSERT FAILED... Couldn‘t open shared file mapping...(pytorch训练函数)

安装成功后可以用mamba替换conda,比如更新conda时:

mamba update conda

(3)【可能遇到】我install中出现PackagesNotFoundError问题,参考了https://blog.csdn.net/weixin_45552562/article/details/109668589 后解决

(4)安装pytorch 首先在pytorch官网中寻找pytorch1.8的安装命令。在我这个时间点1.8的连接还挂在首页作为一个长期维护版本,之后可能需要在历史版本中找到1.8。

注意要安装GPU版本以及注意cuda版本的匹配。这里有一个小问题,就是通过nvidia-smi和nvcc -v查到的cuda版本可能不一样,当时安装的时候我还没注意过这个问题,具体见:https://blog.csdn.net/sophicchen/article/details/120782209。当时我在nvidia-smi中查到的cuda版本为11.6,而pytorch1.8没有匹配cuda11.6,只有10.2和11.1,于是我只能装11.1的版本试试(后来证明可用)。我使用如下命令装pytorch:

mamba install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch-lts -c conda-forge

这里我失败了3次,因为我用的宿舍网,网络环境好的话应该一次就可以成功。 (4)验证安装是否成功

conda env list

看到pytorch位列其中,接下来看看pytorch是否能够调用gpu 打开pycharm,随便开一个项目,将项目环境切换到你刚创建的新环境。 有可能pycharm识别不到你刚创建的环境,这时在解释器设置中手动添加相应的python.exe即可。 切换环境后,在pycharm下方的控制台中输入

import torch #如果这里有报错,下方有解决方案import torchvisiontorch.cuda.is_available()

得到Ture即为成功,也可以用

torch.cuda.get_device_name(0)

查看显卡类型。 (5)【可能遇到】import torch报错

上面提到有可能在import torch时报错,报错信息如下

ValueError: module functions cannot set METH_CLASS or METH_STATIC

这是python3.6版本中的一个bug,具体见https://github.com/pytorch/pytorch/issues/2731 只要在终端(注意要在你刚创建的环境下)中

pip install numpy -I

即可解决问题

四、后续

如果问题没有解决,到时候再更新

本文链接地址:https://www.jiuchutong.com/zhishi/299906.html 转载请保留说明!

上一篇:深入理解TDNN(Time Delay Neural Network)——兼谈x-vector网络结构(深入理解linux内核)

下一篇:【华为OD机试真题2023 JAVA】服务中心的最佳位置(华为od测试岗机试需要怎么准备)

  • 城建税要减进项税吗
  • 车船税是否每年都交
  • 预付账款和应付账款的区别
  • 食品类发票明细有哪些面包方便面
  • 分红免征企业所得税
  • 手工发票有没有期限
  • 取得租金收入的会计分录
  • 每月工资个税为零
  • 为职工支付的补充养老保险计入哪
  • 银行存款利息的计算
  • 当留底税额大于退税额会计分录怎么写?
  • 投资损益表该如何填列
  • 质量保证产品一般是指
  • 投标保证金利息计入什么科目
  • 零报税报表怎么下载
  • 17增值税发票怎么计算
  • 机械租赁费发票图片
  • 定额发票上的金额是什么
  • 企业所得税报表模板
  • 未达起征点销售额,11栏怎么填写
  • 存货缺货成本如何算
  • 税务申报系统叫什么
  • 税盘减免会计分录
  • windows10开机很卡
  • h3c路由配置教程
  • 非公开发行股票是利好还是利空
  • 公司开业前启动大会
  • 政府扶持资金要交所得税吗
  • 理财产品利息税
  • 顺流交易合并抵消 chenyiwei
  • php网站结构
  • 二手房交易土增税文件
  • 无形资产的摊销年限不得低于多少年
  • 利润核算主要包括
  • 常用的php操作mysql的函数有哪些
  • 期末增值税结转账务处理
  • 财务会计制度备案
  • SSD目标检测算法
  • 毛利率为负也可以投资吗
  • 小满内容
  • 发票带折扣怎么开
  • 精选100个Python实战项目案例,送给缺乏实战经验的你
  • 论文implications
  • 专用发票抵扣联是什么意思
  • 金融企业贷款损失税前扣除
  • c语言内嵌汇编
  • mysql redo log buffer
  • 预缴税款计入什么科目
  • 销售收入是营业总收入么
  • 劳务派遣小规模开票几个点
  • 征地费用包括
  • 临时设施账务处理分录
  • mysql内连接查询使用汉语作为官方语言的所有国家
  • 金蝶余额调节表勾对日期什么意思
  • PostgreSQL中的XML操作函数代码
  • 开矿泉水发票怎么开?
  • 发票复核人一定要填吗
  • 收到的进项发票在哪里认证
  • 公司实行全成本核算工资怎么算
  • 固定资产盘亏账务处理的问题
  • 企业职工福利费的扣除标准是多少?
  • 上一年的奖金在哪查
  • 农产品怎么自产自销
  • 微信收入构成在哪
  • 未达到起征点的税金怎么做凭证
  • 进项税额允许抵扣分录
  • 安装win7旗舰版鼠标无法使用
  • Linux系统下findmnt命令使用全解
  • 如何dj
  • win7提示计算机内存不足
  • win8怎么进去安全系统
  • Node.js中的全局变量有哪些
  • unity克隆物体
  • 清除cookie是什么意思
  • 实现非常简单的英文
  • python else用法
  • 惠州市国家税务局稽查局局长
  • 广东省地方税务局征收社会保险费欠费管理暂行办法
  • 湖北省地税局稽查局
  • 南通五险一金最低比例
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设