当前位置: 首页 > news >正文

模型测试报错:有2张显卡但cuda.device_count()显示GPU卡数量只有一张

此贴仅为记录debug过程,为防后续再次遇见


问题

问题情境
复现文章模型,使用GPU跑代码,有两张GPU,设置在 cuda: 1 上跑

问题描述
在模型测试加载最优模型时报错:torch.cuda.device_count()显示GPU卡数量只有一张,无法加载使用卡1
在这里插入图片描述

报错信息
运行超时

RuntimeError: Attempting to deserialize object on CUDA device 1 but torch.cuda.device_count() is 1. Please use torch.load with map_location to map your storages to an existing device.

解决

发现是以下代码问题

os.environ['CUDA_VISIBLE_DEVICES'] = args.gpu

该语句限制了 PyTorch 进程可以看到的 GPU。例如,如果 x=“0”,则你的代码只能看到一张 GPU(设备 0),即使你机器有多张卡,之后你调用 torch.cuda.device_count() 就只会返回 1

将该行代码注释后可以成功使用GPU 1 运行测试
在这里插入图片描述

http://www.xdnf.cn/news/265483.html

相关文章:

  • 计算机组成原理实验(7) 堆指令部件模块实验
  • C++STL之vector
  • 2018-2020年 北京大学县域数字乡村指数
  • 深度学习:AI 机器人时代
  • Sharding-JDBC分库分表中的热点数据分布不均匀问题及解决方案
  • 第一节:OpenCV 基础入门-简介与环境搭建
  • AI开源框架对比:PyTorch vs TensorFlow vs PaddlePaddle
  • Java 入门篇
  • MySQL--索引入门
  • SQL笔记——左连接、右连接、内连接
  • Java线程创建与并发管理
  • 【第十六届蓝桥杯省赛】比赛心得与经验分享(PythonA 组)
  • 有机玻璃材质数据采集活性炭吸附气体中二氧化硫实验装置
  • Go小技巧易错点100例(二十七)
  • 数据分析与可视化实战:从鸢尾花到乳腺癌数据集
  • 数据库基础-库,表的操作
  • 人工智能——层次聚类算法
  • JVM 一文详解
  • 普通IT的股票交易成长史--20250502 突破(2)
  • 【Net】DPDK
  • Vscode/Code-Server 安装中文包——CI/CD
  • PCIe | TLP 报头 / 包格式 / 地址转换 / 配置空间 / 命令寄存器 / 配置类型
  • JMM 与 JVM 运行时数据区有什么区别和联系?
  • 数字化转型进阶:26页华为数字化转型实践分享【附全文阅读】
  • 传奇各职业/战士/法师/道士/头盔爆率及出处产出地/圣战/法神/天尊/祈祷/斗笠/精灵
  • 面向对象编程简介
  • list的两种设计
  • MySQL 比较运算符详解
  • 穿越数据森林与网络迷宫:树与图上动态规划实战指南
  • 深拷贝与浅拷贝的核心区别