首页 > 其他分享 >deepspeed训练模型提示:cpu_adam.so: cannot open shared object file: No such file or directory

deepspeed训练模型提示:cpu_adam.so: cannot open shared object file: No such file or directory

时间:2024-07-17 20:19:11浏览次数:8  
标签:deepspeed No 编译 so file pip ninja 安装

  1. 背景

本人在安装deepspeed后遇到了这个报错,明眼人一看就是缺库,但是搜索到的解决方案(凌漪_, 2023)说是设置一个环境变量,实在是治标不治本,而且对本人来说连标都治不了。其他的博客尚未看到解决此问题的。

  1. 分析

这个so文件理论上应该在安装deepspeed的过程中就自动编译好了,但是现在没有,我们肯定需要找到编译这个so文件的地方。

  1. 解决过程
    通过认真阅读deepspeed的README,可以看到一句话:

If you would like to pre-install any of the DeepSpeed extensions/ops (instead of JIT compiling) or install pre-compiled ops via PyPI please see our advanced installation instructions.

我们打开deepspeed的高级安装指南,可以看到下列文字

DS_BUILD_CPU_ADAM builds the CPUAdam op.

我们只需要在安装deepspeed时设置DS_BUILD_CPU_ADAM=1即可。因此,我们卸载并重新安装deepspeed

pip uninstall deepspeed
pip cache remove deepspeed
DS_BUILD_CPU_ADAM=1 pip install deepspeed

然后就会自动编译出cpu_adam.so文件。

在编译过程中,你可能会遇到gcc不认--std=c++17这个错误,类似:unrecognized command line option ‘--std=c++17’,这说明你需要更高版本的gcc。如果你有root权限,你可以用root折腾安装,把系统弄坏了博主概不负责,如果你没有或者有但是不想用,可以参看本人之前的博客(王, 2024),使用conda安装。安装完毕后,记得将对应程序符号链接到PATH中,并将链接命名为gcc/g++,才能让编译脚本找到并优先使用。

如果编译或运行时遇到没有ninja的问题,你需要同时使用pip和conda安装ninja,pip安装的ninja是个python库,conda安装的ninja是个命令行程序,二者都被deepspeed需要。

标签:deepspeed,No,编译,so,file,pip,ninja,安装
From: https://www.cnblogs.com/wangbingbing/p/18308206

相关文章

  • 2024-07-17 搭建一个node+express服务器,并把静态资源部署到该服务器(本地开发)
    前言:请确保你已安装了node,没有你得先装这个。步骤一://创建文件夹mkdirexpress-node//创建完了进入该文件夹cdexpress-node//初始化npminit-y//安装expressnpmiexpress前提工作都准备好后,在express-node文件夹里新建文件server.js,作为启动服务器的入口文件......
  • Goby漏洞发布 | CVE-2024-4879 ServiceNowUI /login.do Jelly模板注入漏洞【已复现】
    漏洞名称:ServiceNowUI/login.doJelly模板注入漏洞(CVE-2024-4879)EnglishName:ServiceNowUI/login.doInputValidationVulnerability(CVE-2024-4879)CVSScore:9.3漏洞描述:ServiceNow是一个业务转型平台。通过平台上的各个模块,ServiceNow可用于从人力资源和员工管理到自动......
  • python ssl报错 aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot
    报错信息原代码:asyncwithsession.post(url,headers=headers,data=payload)asresponse:print(f"{id}签到结果:",awaitresponse.text())原因:在使用aiohttp进行HTTPS请求时,如果没有设置正确的SSL证书验证,就可能会出现以上问题解决办法忽略SSL......
  • 使用注册表进行映像劫持,将 notepad.exe 替换为 notepad2.exe 的操作步骤如下:
    使用注册表进行映像劫持,将notepad.exe替换为notepad2.exe的操作步骤如下:打开注册表编辑器:按 Win+R 组合键打开运行对话框。输入 regedit 并按Enter打开注册表编辑器。导航到指定路径:在注册表编辑器中,依次展开以下路径:HKEY_LOCAL_MACHINE\SOFTWARE\Microso......
  • Doris failed to initialize storage reader. tablet=106408, res=[NOT_IMPLEMENTED_E
    ApacheDoris2.3以下的版本会存在一个bug,导致数据在合并时存在异常,在后续查询该字段数据时会提示[1105][HY000]:errCode=2,detailMessage=(192.168.15.228)[CANCELLED]failedtoinitializestoragereader.tablet=106408,res=[NOT_IMPLEMENTED_ERROR]tobeimplemen......
  • NOI2024游记
    试图性的写一下游记,本来都懒得写了,但是由于太戏剧性了就还是写一下吧Day-?记不太清了,写一部分把由于要提前到重庆熟悉环境,所以我们就都来了来的这段时间是跟着nfls打模拟赛+UNR第一天打的超级好,哈哈,排名12/70+然后就非常高兴第二天和第三天是UNR,打的屁也不是,混了个Cu就滚了......
  • 使用wrangler创建hono和D1的Worker
    以下内容参考了https://developers.cloudflare.com/d1/get-started/https://developers.cloudflare.com/d1/examples/d1-and-hono/1:登录npxwranglerlogin2:创建Workernpmcreatecloudflare@latestd1-tutorialChoose"HelloWorld"Workerforthetypeofapplic......
  • 电脑开机报错operating system not found解决方法
          最近有网友问我电脑一启动提示:operatingsystemnotfound,这个提示意思是未找到操作系统。该提示主要原是此电脑启动没有检测可启动的操作系统,原因有很多,比如设置的第一启动项不对、硬盘数据线没接好、硬盘故障等都有可能导致,下面我们来详细分析一下开机出现ope......
  • cerebro 报错: Oops, cannot start the server. com.google.common.util.concurrent.Un
    @目录前言环境异常修改方案第二次报错修改方式成功前言使用elasticsearch+springboot实现新闻搜索功能:https://javapub.net.cn/star/project/news-search-es/遇到的错误记录。环境cerebro下载地址:https://github.com/lmenezes/cerebro使用了最新的版本:cerebro-0......
  • Javascript: Blob, File/FileReader, ArrayBuffer, ReadableStream, Response 转换方
    目录先上图各个ObjectArrayBuffer:Blob:File:FileReader:ReadableStream:Response用法举例ArrayBufferBlob,File,FileReaderReadableStream关于ReadableStream的一点总结Response构造函数Parametersblob()先上图各个ObjectArrayBuffer:1.ArrayBuffer是JavaScript......