页面文件太小,无法解决/BrokenPipeError: [Errno 32] Broken pipe问题解决

跑模型的日子就是天天、天天地改bug,bug天天对我说“爱你”,我只想让它滚出地球呜呜呜呜呜呜。为了表达我对它们的“爱意”,我一定要把这几天的辛酸泪记录下来!

前情

前情是我开始跑GitHub上大佬的模型,下载好了资源,准备好了环境,开始运行,毫无意外,报错:
BrokenPipeError: [Errno 32] Broken pipe
去网上找原因,一般是因为线程设置过多,在内存不够的情况下会出现线程管道破裂。
(碰到这个问题的朋友,可以直接问题解决,就不要浪费时间看我中间一大段叭叭叭叭了)
第一种解决办法:将num_workers设置为0.
RUN AGAIN!
继续报错
OK fine,那我继续找办法。
第二种解决办法:
加入下面代码,直接忽略管道破裂的报错:

from signal import signal, SIGPIPE, SIG_DFL
        signal(SIGPIPE, SIG_DFL)

RUN AGAIN AND AGAIN!
哇喔!我就知道没那么顺利地让我跑出来,它就是想让我接着报错接着哭!!!
好嘛,继续找原因,发现signal这个包一般是在Linux系统下才有的,Windows不支持,OMG!不会吧不会吧我不会要去整个Linux系统吧救命!

艰难的Linux之路

好家伙,我还真就去整了Linux系统,接下来就开始了我艰难的Linux历程,先带上痛苦面具。
VMware虚拟机和centos系统的安装过程还是比较顺利的,接着我开始装Python,好不容易在root用户下装好了Python,结果发现到普通用户下没有权限用,然后我就开始全网搜怎么给普通用户授予权限,果然只有菜狗才会问出这种问题,网上都没什么关于这个问题的答案呜呜呜呜,还好最后自己摸索出来了,不用授予权限也可以。如果你的项目是放在普通用户的路径下,比如我的直接放在了桌面,在root用户下无法到达桌面这个文件夹,那么解决办法是,可以先通过普通用户到达你的项目路径,这个时候再切换成root用户,这样就可以直接命令:python了。(我真的是菜狗,太菜使我难过呜呜呜呜)

Python装好了,可以跑项目了耶,RUN! 报错!
缺少NVIDIA驱动!
好嘛我去装驱动,它总是不想我顺利,驱动安装一直不成功,找原因!大概率是Linux内核版本太低,需要升级内核!检查一下发现CentOS自带的内核是3.0版本的,现在最新的到5.4了,好吧,那我去升级内核!
升级内核继续报错,设备已无空间!what!怎么可能!我就装了一个Python,下了一个5.4版本的内核源码!没内存了好家伙!接着开始全网搜怎么清内存,怎么给分区扩容,呜呜呜呜呜呜,然鹅扩容路上异常艰辛,为什么我老是碰到别人没碰到的问题,好难过!最后我放弃了,大不了卸载重装嘛!卸完的我又是一条好汉!!!

重装后内核编译一路顺畅!
教程:https://blog.csdn.net/u012325865/article/details/102905024?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-1-102905024-blog-81706448.pc_relevant_paycolumn_v3&spm=1001.2101.3001.4242.2&utm_relevant_index=4

接下在要安装NVIDIA驱动程序了,第一步检查发现系统的内核和内核源码居然不是对应的,升级后的源码没有,我不禁发出黑人问号???
我累了,谁爱搞谁爱搞,Linux再见!

问题解决

于是我又回到了最开始碰到的那个问题:管道破裂!
再次运行发现还有其他报错提示:
OSError: [WinError 1455] 页面文件太小,无法完成操作。
找了好久,皇天不负有心人,终于让我找到了正解!!!
请看下面的博文,它就是天使!!!
https://www.cnblogs.com/20183544-wangzhengshuai/p/14814459.html

其中的第三种办法是正解!
电脑默认情况下是没有给D盘分配虚拟内存的, 所以将Python装在D盘的朋友(说得可不是我嘛!), 在跑程序时, 没有分配虚拟内存, 自然就遇到了上面的问题, 所以根本操作只要给D盘分配虚拟内存即可。

这些天得到的血泪教训就是一定一定不要放过任何一个错误提示,不然你就会往错误的方向越走越远,越走越离谱!!!

  • 8
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值