pytorch运行问题

运行pytorch的时候,出现了莫名的错误。清楚地记得我以前成功编译过,只不过我今天换了一个虚拟环境,竟然跑不通了。

那我在切换回去原来的编译好的用另一个版本的pytorch试试吧。咦?竟然可以运行,那这是怎么回事呢?

经过多方搜索推究,原来需要删除以前安装的 pytorch 的相关的文件(ps:我极度怀疑是以前单独安装caffe2的时候的遗留问题)。不兼容的文件位于哪里呢?对于我的环境来说,主要存在两处。好了,知道原因了,那就着手解决吧。详情如下:

(如果在 anaconda 环境下出现问题,其实,出现这种问题一个很主要的原因是在搭建caffe的时候就没有正确配置Python路径)

问题1:libtorch.so.1: undefined symbol: _ZTI N2at11TypeDefaultE

解决办法:运行的时候报错,原因是我以前已经编译过一个caffe2,然后在我的  /usr/local/lib 下有四个文件,可能跟我的现在运行的pytorch不兼容了,这几个文件分别是:

  • libcaffe2_detectron_ops_gpu.so  
  • libcaffe2_observers.so
  • libcaffe2_gpu.so                
  • libcaffe2.so

那能怎么办,删除了吧。

$ sudo rm  /usr/local/lib/libcaffe2*

 

问题2:ImportError: /home/***/***/python3.6/site-packages/torch/lib/libcaffe2.so: undefined symbol: _ZN3c108demangleEPKc

解决办法:删除另一个文件,指令是:

$ sudo rm /usr/local/lib/libc10.so

然后再运行,不出意外的话应该可以了。

 

参考:

https://github.com/pytorch/pytorch/issues/15800

https://blog.youkuaiyun.com/u013955915/article/details/86491679

### 配置和设置PyTorch运行环境 #### 创建虚拟环境 为了确保项目依赖项不会相互冲突,建议为每个项目创建独立的Python虚拟环境。对于PyTorch而言,可以使用`conda`来管理这些环境。 ```bash conda create -n pytorch python=3.7 ``` 这条命令会创建一个新的名为`pytorch`的虚拟环境,并指定Python版本为3.7[^1]。 #### 激活新创建的虚拟环境 一旦完成上述操作,则需激活此新的工作空间: ```bash conda activate pytorch ``` 这一步骤使得后续所有的软件包都将被安装到这个特定环境中去[^2]。 #### 安装CUDA(如果需要) 在准备安装PyTorch之前,应该先确认目标硬件是否支持GPU加速以及是否有合适的CUDA驱动程序已安装好。因为不同版本的PyTorch可能对应不同的CUDA版本需求,所以应当仔细核对自己想要使用的PyTorch版本所对应的CUDA兼容性列表。 #### 安装PyTorch及相关库 当一切准备工作完成后,可以通过官方推荐的方式安装适合当前系统的PyTorch发行版。例如,针对已经设置了CUDA的情况,可以选择如下方式之一来进行安装: 通过Anaconda云平台获取预编译好的二进制文件是最简便的方法之一: ```bash conda install pytorch torchvision torchaudio cudatoolkit=10.2 -c pytorch ``` 请注意这里的`cudatoolkit=10.2`部分应根据实际所需的CUDA版本调整[^4]。 如果不打算使用GPU功能或者机器上并没有NVIDIA显卡的话,那么可以直接跳过CUDA相关步骤而仅安装CPU-only版本: ```bash pip install torch torchvision torchaudio ``` 以上就是整个配置过程的大致流程,在具体实施过程中还需要关注各个组件之间的版本匹配情况以避免潜在的问题发生[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

或许,这就是梦想吧!

如果对你有用,欢迎打赏。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值