首页 > 系统相关 >X86架构CPU下Ubuntu系统环境源码编译pytorch-gpu-2.0.1版本

X86架构CPU下Ubuntu系统环境源码编译pytorch-gpu-2.0.1版本

时间:2023-07-31 12:44:54浏览次数:41  
标签:libstd X86 c++ 编译 pytorch 源码 docker

本文操作步骤与 aarch64架构CPU下Ubuntu系统环境源码编译pytorch-gpu-2.0.1版本大致相同,只是CPU架构不同而已,因此这里只记录不同的地方。

 

重点:

一个个人心得,那就是要编译pytorch源码最好是选择docker环境,因为这种环境下配置比较纯净,一定要避免那种自己使用多年的Linux系统,那种使用多年的老系统中各种配置都比较混乱,如果这么使用往往导致最好编译pytorch源码的失败。

一定要使用docker镜像环境进行pytorch源码编译!!!

一定要使用docker镜像环境进行pytorch源码编译!!!

一定要使用docker镜像环境进行pytorch源码编译!!!

 

---------------------------------------------------------------------------------------

 

编译的系统环境:

docker镜像这里的选择为:

命令:(参考:如何拉取指定CPU架构并且指定ubuntu版本并且指定cuda和cudnn版本的docker镜像

docker pull  --platform=linux/x86_64   nvidia/cuda:12.1.1-devel-ubuntu22.04

 

 

源码下载方法建议使用代理(跳墙):

参考:git clone 如何通过proxy进行远程代码仓库拷贝下载

(至于怎么找proxy站点这个实在无法言说)

 

 

anaconda环境下编译,安装相关依赖:

conda install cmake ninja
# Run this command from the PyTorch directory after cloning the source code using the “Get the PyTorch Source“ section below
pip install -r requirements.txt

 

 

 

 

 (性能加速组件,可选择性安装)(对应的版本是否存在需要参考:https://anaconda.org/pytorch/repo

conda install mkl mkl-include
# CUDA only: Add LAPACK support for the GPU if needed
conda install -c pytorch magma-cuda121  # or the magma-cuda* that matches your CUDA version from https://anaconda.org/pytorch/repo

# (optional) If using torch.compile with inductor/triton, install the matching version of triton
# Run from the pytorch directory after cloning
make triton

 

 

 

 

 

 

编译:

export CMAKE_PREFIX_PATH=${CONDA_PREFIX:-"$(dirname $(which conda))/../"}
python setup.py develop

 

 

 

 

打包:

pip wheel .

 

 

===============================================

 

 

 

 

执行完打包命令后在源码目录下找到编译后的文件:

 

 

 

安装:

 

 

 

 

 

运行报错:

ImportError: /root/anaconda3/lib/./libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /root/anaconda3/lib/python3.11/site-packages/torch/lib/libtorch_python.so)

 

 

 

查看当前环境下使用的libstdc++.so文件的具体情况:

 

 

 

 

 

查询系统中是否有版本GLIBCXX_3.4.30的libstdc++.so文件:

find / -name libstdc++.so.6

 

 

 

 

查询其他位置的版本是否支持:

strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6| grep GLIBCXX_3.4.30

 

 

 

 

修改当前环境下的libstdc++.so.6的指向:

rm /root/anaconda3/lib/./libstdc++.so.6

ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30 /root/anaconda3/lib/./libstdc++.so.6

 

 

 

再次运行pytorch:

 

成功执行。

 

 

 

-------------------------------------------------------------------

 

 

需要注意的是在运行docker容器时应该确认下容器环境内是否可以使用GPU:

 

标签:libstd,X86,c++,编译,pytorch,源码,docker
From: https://www.cnblogs.com/devilmaycry812839668/p/17593158.html

相关文章

  • 【4.0】DRF之Request类源码分析
    【一】引入classBooksView(APIView):defpost(self,request):''':paramrequest:新的request,不是原来的那个:return:'''print(type(request))#rest_framework中的新request#继承APIView......
  • 流媒体协议之SRS源码分析0731
    流媒体协议之SRS源码分析分析的源码具体版本号为:SRS(SimpleRealtimeServer)v6.0.36源码下载路径:https://down.chinaz.com/soft/51363.htm  启动流程图: SrsServer类图关系: ......
  • RTSP流媒体服务器LntonNVR(源码版)视频平台配置用户的视频流播放时长的具体操作步骤
    今天我们来分享一下另一个关于鉴权的功能:LntonNVR的视频流地址鉴权。有很多用户在使用LntonNVR时都遇到一个同样的需求,那就是将分发的流地址分享给用户播放时,如何控制用户的播放时长呢?因为,如果有用户一直在拉流播放,则会一直消耗服务器的带宽资源。如果能控制用户的播放时长,则会大......
  • UE源码分析:Slate 类鼠标输入处理
    序言UE4.25版本本章看一下UE的“类鼠标”输入处理(其实就是鼠标和触摸的输入,我也没找到专门的术语来代指,英文UE用的是PointerXXX),主要是按下、移动、抬起等相关的的处理。输入处理大致的代码流&堆栈FWindowsApplication是平台层的,处理Windows事件FSlateApplication是引......
  • 谷粒商城项目篇7_分布式高级篇_全文检索ES、商城业务(商品上架)、Feign源码简析
    目录全文检索ESES入门概念Docker安装ES基本操作举栗查询QueryDSL聚合aggregations映射Mapping安装ik分词器安装Nginx,配置远程词库整合SpringBoot新建微服务模块,导入依赖配置使用测试项目中使用场景商城业务商品上架ES的Mapping设计上架代码编写Feign源码封装消息返回R细节问题一、......
  • pytorch-合并与分割
    Mergeorsplit▪Cat(合并)▪Stack(合并)▪Split(拆分)▪Chunk(拆分)合并cat这个就是合并两个tensor比如说有两个班级的成绩单,一个是1-4班的,一个是5-9班的,我们现在需要合并这两份成绩单。▪Statisticsaboutscores▪[class1-4,students,scores]▪[class5-9,stud......
  • 直播平台源码开发,信息收发功能搭建
    在历史发展长河中,人类经过进化有了完整的语言系统,在生活中,人们会通过说话、写字等方式向别人去传递信息,但这些传递信息的方式也有很多限制,像是很远或是无法看到写的字等传递方式的人是无法获取到信息的,所以在古时候,一个人出远门就很难去联系到了。随着人类进入网络时代后,手机被发明......
  • RTSP/Onvif视频服务器LntonNVR(源码版)视频平台忘记密码无法登录,重置密码的具体操作步骤
    LntonNVR安防视频云服务主要功能在于通过RTSP/Onvif协议,接入前端音视频采集设备,通过平台将拉取过来的音视频流转化成适合全平台播放的RTMP、RTSP、FLV、HLS、Webrtc等视频流格式,方便用户进行网页直播,或接入自身业务平台。我们在实际项目中,经常有遇到用户反馈说部署了LntonNVR平台后......
  • 01、spdlog源码阅读——registry注册表
    注册表具有唯一标识,用于管理多个日志//Copyright(c)2015-present,GabiMelman&spdlogcontributors.//DistributedundertheMITLicense(http://opensource.org/licenses/MIT)#pragmaonce//Loggersregistryofuniquename->loggerpointer//Anattempttocr......
  • 微信wechar(weixin)支持xp和Vista.exe版,32位x86版
    翻看微信官网有没有微信PC版本更新,并查看了官网的更新日志,无意中发现了还有支持XP和Vista系统的版本。一、支持XP和Vista系统的版本下载:1.打开官网:https://weixin.qq.com点击更多日志2.在左侧列表中找到3.3.0版,页面最下面,下载适用于Windows7以下系统的版本经查看,其......