深度学习报错 | THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp

  • 错误定位
  • 解决历程

错误定位

近日在自己的服务器上跑别人的代码时,反复出现报错:
THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp)
具体报错情况为,把张量加载到设备cuda上时报错,即无法利用gpu进行计算和训练,初步推测应为 pytorch 和 cuda 版本不匹配。

解决历程

  1. 如果是面对别人的代码,建议大家新开 test.py,单独测试代码能否运用
    gpu(我的结果是不行,代表原来的环境有问题),测试代码可参考如下:
import torchdevice = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
print(device)
a = torch.tensor([1, 2, 3], device=device)
print(a)
  1. python的版本也很重要,大部分人建议是python3.6 - python3.7

  2. 根据本机版本安装 pytorch-gpu,可以在 bing 上直接搜索 cuda(梯子),找到 [Compute Capability, GPU semiconductors and Nvidia GPU board products]表,如下。最左侧的 Compute capability 是对应GPU的算力,不同GeForce设备对应的算力不同,设备越好算力越高。

  3. 找到算力后,绿色处对应的是算力,cuda SDK 是我们能安装的 cudatoolkit ,非常重要!不同的 cudatoolkit 对tensorflow 和 pytorch 的兼容是不同的。注意,我们安装的 cudatoolkit 还要小于本地的 driver version,可以用 nvidia -smi 来查询。

  4. 重要的是tensorflow的版本对应,我参考了这一篇
    https://blog.csdn.net/K1052176873/article/details/114526086

  5. pytorch 安装代码,官网上的在我的服务器上,不能安装gpu版,以下是我具体装机用到的;去掉 -c pytorch在不开全局代理的时候会更快。

conda install pytorch-gpu torchvision torchaudio cudatoolkit=11.2
  1. 最后分析结果
    别人代码里用到的是低版本的 tensorflow,无法匹配高cudatoolkit和算力,具体到pytorch其实没什么问题。
    如果要使用的话,现在的想法就是把 tensorflow 1.x 版本修改为 2.x。还看到说,nvidia把1.x版本集成到最新的算力了,具体还没尝试过。

——————
最后的建议:
1、每次重新配环境的时候,不一定要所有包重装,可以先把tensorflow和pytorch装好
2、装其他库的时候,可以按照本机的特点,写enviroment.yml,把包都集成好,能降低重复装环境,将花的时间。
3、pytorch 和 tensorflow 的版本时可能发生冲突的,我认为最明显的冲突就是 cudatoolkit,其余因素暂未知。

参考资料:
1、[最详细的 Windows 下 PyTorch 入门深度学习环境安装与配置 CPU GPU 版 | 土堆教程]
GPU装pytorch先看:9.10.14.23-28
2、CUDA-Wikipedia

深度学习报错 | THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp相关推荐

  1. pytorch 报错“THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp line=663 error=11“解决方案

    今天使用pysot测试数据,pytorch出现下面报错: THCudaCheck FAIL file=/opt/conda/conda-bld/pytorch_1535493744281/work/a ...

  2. [debug]THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp line=405 error=11 : invalid argume

    解决 THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp line=405 error=11 : invalid argument 完 ...

  3. python出现THCudaCheck FAIL file=/pytorch/aten/src/THC/ThCGeneral.cpp line=405 error=11 : 情况

    python出现THCudaCheck FAIL file=/pytorch/aten/src/THC/ThCGeneral.cpp line=405 error=11 : invalid argum ...

  4. file=/pytorch/aten/src/THC/THCGeneral.cpp line=383 error=8 : invalid device

    这个错误通常出现在使用CUDA加速的PyTorch代码中.这个错误表示在GPU设备上执行的某个函数不是一个有效的设备函数.其中的错误代码"error=8"是CUDA runtime ...

  5. RuntimeError: cuda runtime error (3) : initialization error at /pytorch/aten/src/THC/THCGeneral.cpp:

    第三个大坑:在python多进程中使用pytorch加载模型时报错: THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp line=5 ...

  6. 解决RuntimeError: cuda runtime error (30) : unknown error at /pytorch/aten/src/THC/THCGeneral.cpp:70N

    解决两个问题: (1)RuntimeError: cuda runtime error (30) : unknown error at /pytorch/aten/src/THC/THCGeneral ...

  7. 【Bug解决】invalid argument at /pytorch/aten/src /THC/THCGeneral.cpp:405

    错误信息: RuntimeError: cuda runtime error (11) : invalid argument at /pytorch/aten/src/THC/THCGeneral.c ...

  8. RuntimeError: cuda runtime error (30) : unknown error at /pytorch/aten/src/THC/THCGeneral.cpp:50

    RuntimeError: cuda runtime error (30) : unknown error at /pytorch/aten/src/THC/THCGeneral.cpp:50 在运行 ...

  9. RuntimeError: cuda runtime error (11) : invalid argument at /pytorch/aten/src/THC/THCGeneral.cpp

    RuntimeError: cuda runtime error (11) : invalid argument at /pytorch/aten/src/THC/THCGeneral.cpp cud ...

最新文章

  1. Win8Metro(C#)数字图像处理--2.12Sobel边缘检测
  2. 汇编中的扫描码、ASCII码(也称字符码)、扩展码、虚拟键码 的区别
  3. 【转】心目中的编程高手
  4. c++ 调用 ffmpeg 编程
  5. sql 判断某表是否存在
  6. 自适应注意力机制在Image Caption中的应用
  7. verilog/VHDL实现JESD204B协议
  8. 【牛客 - 368B】选点(dfs序,LIS 或 dfs序 + 树状数组 + 离散化,树状数组求LIS的方法)
  9. Zetcode GUI 教程
  10. 32-bit ARM的 word halfword byte
  11. Codeforces 948D Perfect Security
  12. 情人节,给你们发点福利。
  13. 年龄怎么用计算机算,年龄计算器
  14. 由手机号绑定的账号,都应设置更换手机号功能
  15. java限流器简单实现
  16. wps office 办公软件下载
  17. Apple watch ,小米微信通知
  18. 阿里云免费SSL证书没有了?有!(免费证书新攻略)
  19. poco源码简单分析
  20. 猕猴桃酵素的功效_过路老熊_新浪博客

热门文章

  1. ubuntu18.04+win10双系统glub2改变默认启动
  2. JVM最详细知识点笔记-内存与垃圾回收篇
  3. 超级电脑牛人大全[转] 搞笑。。。
  4. 华为阿里腾讯下班时间曝光:所有的光鲜,都有加班的味道
  5. LED显示器和LCD显示器的区别
  6. 利用RVM与FastDeploy实现高效视频绿幕抠像:挽救视频剪辑师的工作效率
  7. Excel函数学习——subtotal
  8. 【Win32】初识Win32编程
  9. 远征(expedition)
  10. 无限数列求第n项 java