选择要用的GPU: CUDA_VISIBLE_DEVICES

使用CUDA_VISIBLE_DEVICES设置显卡 阅读详情
AI摘要

本文详细介绍了如何在服务器中使用CUDA_VISIBLE_DEVICES环境变量选择特定的GPU运行程序,包括Linux和Windows系统的临时和永久设置方法。

服务器中有多个GPU,选择特定的GPU运行程序可在程序运行命令前使用:CUDA_VISIBLE_DEVICES=0命令。0为服务器中的GPU编号,可以为0, 1, 2, 3等,表明对程序可见的GPU编号。

1. 命令:

CUDA_VISIBLE_DEVICES=1     # 只有编号为1的GPU对程序是可见的,在代码中gpu[0]指的就是这块儿GPU
CUDA_VISIBLE_DEVICES=0,2,3 # 只有编号为0,2,3的GPU对程序是可见的,在代码中gpu[0]指的是第0块儿,
						   # gpu[1]指的是第2块儿,gpu[2]指的是第3块儿
CUDA_VISIBLE_DEVICES=2,0,3 # 只有编号为0,2,3的GPU对程序是可见的,但是在代码中gpu[0]指的是第2块儿,
						   # gpu[1]指的是第0块儿,gpu[2]指的是第3块儿
--------------------- 
# 作者:__Lingyue__ 
# 来源:优快云 
# 原文:https://blog.youkuaiyun.com/cfarmerreally/article/details/80321276 
# 版权声明:本文为博主原创文章,转载请附上博文链接!

2. 使用

临时设置:

Linux: export CUDA_VISIBLE_DEVICES=1
windows:  set CUDA_VISIBLE_DEVICES=1

永久设置:

linux:
在~/.bashrc 的最后加上export CUDA_VISIBLE_DEVICES=1,然后source ~/.bashrc
windows:
打开我的电脑环境变量设置的地方,直接添加就行了。
在GPU上运行pytorch程序(指定单/多显卡) 阅读详情

相关推荐

Pytorch并行计算(一): DataParallel

文章目录PyTorch并行计算1. 官网实例2. 使用方法3. 运行过程4. 源代码解读 PyTorch并行计算 nn.DataParallel 1. 官网实例 PyTorch官网的例子:DATA PARALLELISM PyTorch官网的手册:torch.nn.DataParallel(module, device_ids=None, output_device=None, dim=0) 2. 使用方法 具体使用也比较简单,如下所示,其余的不需要变化 # 当不限制GPUs的个数时,默认使用全部的GPU

芒果干的博客 6596

CUDA_VISIBLE_DEVICES

请注意,如果在Python脚本中设置此环境变量,它只会影响从该脚本中导入或启动的任何子进程。PyTorch的设备管理:您可以使用torch.cuda.set_device(device_id)来明确设置希望PyTorch使用的设备。这确保只有您指定的GPU对Python进程可见,从而避免占用其他GPU的内存。因此,对于您的Python进程来说,此GPU现在的设备ID为0。某些操作可能会在后台触发GPU的使用。默认行为:PyTorch可能会在第一次调用时初始化所有可用的GPU,即使您指定使用特定的GPU。

weixin_43845922的博客 7311

CUDA GPU 隔离 CUDA_VISIBLE_DEVICES

场景: 有一台服务器,服务器上有多块儿GPU可以供使用,但此时只希望使用第2块和第4块GPU,但是我们希望代码能看到的仍然是有两块GPU,分别编号为0,1,这个时候我们可以使用环境变量CUDA_VISIBLE_DEVICES来解决这个问题。 比如: CUDA_VISIBLE_DEVICES=1 只有编号为1的GPU对程序是可见的,在代码中gpu[0]指的就是这块儿GPU CUDA_VISI...

YueLing's Blog 2万+

【深度学习高效小trick】使用指定的GPU(组)搞深度学习:CUDA_VISIBLE_DEVICES || os.environ[‘CUDA_VISIBLE_DEVICES‘]=‘1‘

使用指定的GPU组:CUDA_VISIBLE_DEVICES//os.environ['CUDA_VISIBLE_DEVICES']='1'---高效使用服务器的GPU!

Thebest_jack的博客 1万+

(35)远程识别(又称无人机识别)(一)

Ardupilot官网关于《Peripheral Hardware》的翻译 —《(35) 远程识别(又称无人机识别)》。

无人机开发(开源Ardupilot) 4万+

STM32F4实战:手把手教你实现USB OTG双模式切换(Host/Slave)

本文详细介绍了如何在STM32F4上实现USB OTG双模式切换(Host/Slave),包括硬件架构解析、软件实现机制、主机模式下的U盘读写以及从机模式下的自定义设备开发。通过实战案例和优化技巧,帮助开发者快速掌握USB双角色功能,提升嵌入式系统开发的灵活性和效率。

u9v0w的博客 728

【深度学习】CUDA_VISIBLE_DEVICES查看

是一个环境变量,用于指定程序将在哪些 GPU 设备上运行。它通常用于控制程序在多个 GPU 设备的系统上的 GPU 使用情况。通过设置,可以限制程序访问的 GPU 设备,以便在多任务或多用户环境中更好地管理和分配 GPU 资源。具体来说,的值是0,1,2。这表示程序将只在索引为 0、1 和 2 的 GPU 设备上运行,而忽略其他 GPU 设备。使用:在多用户或共享 GPU 资源的环境中,可以通过设置以避免冲突和资源争夺。不同的任务可以限制在不同的 GPU 上运行,以确保资源的有效使用。

weixin_44001371的博客 7624

AquaCrop-OSPy学习笔记02:模型输入设置

AquaCrop-OSPy的输入设置

EWBA_GIS_RS_ER的博客 3692

CUDA 指定设备的方法,CUDA_VISIBLE_DEVICES 设置当前pytorch程序使用那些GPU设备

​ 当服务器有多个GPU卡时,通过设置CUDA_VISIBLE_DEVICES环境变量可以改变CUDA程序所能使用的GPU设备,默认情况下:标号为0的显卡为主卡。

白袍小将的博客 8万+

深入解析高通Adreno DPU的DRM/KMS驱动架构与硬件协同设计

本文深入解析了高通Adreno DPU的DRM/KMS驱动架构与硬件协同设计,详细介绍了Adreno DPU的核心模块组成、显示接口设计以及DRM驱动架构。通过实际案例和调试技巧,帮助开发者理解硬件与软件的协同工作原理,优化显示性能并解决常见问题。

weixin_29266679的博客 436

ArcGIS小白必看:5分钟搞定WGS_1984到Krasovsky_1940_Albers投影转换(附详细步骤)

本文为ArcGIS初学者提供了从WGS_1984地理坐标系转换到Krasovsky_1940_Albers投影坐标系的详细实战指南。文章深入剖析了投影变换与基准面转换的核心区别,通过分步详解创建自定义地理变换、执行投影等关键操作,并附带了常见问题排查与批量处理脚本,旨在帮助用户高效、准确地完成坐标系统转换,为后续空间分析奠定基础。

weixin_29305337的博客 633

啥? 据说你又抢了别人的板子? os.environ[‘CUDA_VISIBLE_DEVICES‘]指定GPU无法生效解决方案 (同时附上torch指定GPU总结)

在使用pytorch的时候利用下面的语句指定GPU为仅为"6",但是用nvidia-smi查看GPu使用时,仍默认为"0"号 import pytorch import os os.environ['CUDA_VISIBLE_DEVICES'] = '6' 解决方案: 将上述语句放到 import pytorch 之前 import os os.environ['CUDA_VISIBLE_DEVICES'] = '6' import pytorch ......

weixin_43301333的博客 1万+

lgv20刷twrp_LG港版v20 root

这是LG港版v20 root,整理了一下有关LG港版v20的官方固件包了,有没有需要的呢,这里把固件包整理一下也是方便大家以后好下载了,因此有一些机友还是不知道在哪里下载官方的rom包,在这里说的固件rom包也就是原版的系统包了,大家可以放心的使用,这些系统包也都是支持线刷的,大家下载下来解压出来根据里面的相关教程来操作就可以了,很简单的,如果你也需要的话就一起来看看吧。软件提示注意!! 此过程会...

weixin_33212263的博客 5387

CUDA_VISIBLE_DEVICES在文件指定GPU设置不生效的原因

CUDA_VISIBLE_DEVICES为何在文件中设置不起作用?

lishanlu136的博客 2942

Zynq7000双核裸机开发实战:如何安全实现共享内存与乒乓RAM设计

本文深入探讨了Zynq7000双核裸机开发中的共享内存与乒乓RAM设计,重点解析了核间通信的Cache一致性处理机制和硬件级实现方案。通过实战代码示例和性能优化技巧,帮助开发者解决双核运行中的访问冲突问题,提升嵌入式系统开发效率。

weixin_29191669的博客 375

【科研绘图系列】R语言绘制代谢物与临床表型相关性的森林图

本研究通过森林图展示了特定代谢物与三种临床比较之间的相关性分析结果。这种方法不仅直观地展示了每个代谢物的效应大小和不确定性,还允许我们比较不同代谢物在不同临床比较中的影响。森林图的结果表明,某些代谢物在特定临床比较中显示出显著的相关性,这可能为理解疾病的代谢机制提供了重要线索。

专注生信领域 561

【指定GPU】使用CUDA_VISIBLE_DEVICES指定可见GPU时的一些坑

结论:虽然这里代码输出当前device id是0,但其实指的是GPU:1,实际使用时也会使用GPU:1。由于设置CUDA_VISIBLE_DEVICES=1,2,所以只有GPU:1和GPU:2对代码可见,代码会认为可见的第一个GPU(即GPU:1)的id为0。

syh的技术记录 8687

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

CUDA Environment Variables: CUDA_VISIBLE_DEVICES

CUDA Environment Variables: CUDA_VISIBLE_DEVICES

程永强 1万+

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

目的:使用CUDA环境变量CUDA_VISIBLE_DEVICES来限定CUDA程序所能使用的GPU设备

目的:使用CUDA环境变量CUDA_VISIBLE_DEVICES来限定CUDA程序所能使用的GPU设备 环境: 系统:Win10 环境:Opencv3.4.0/4.1.0 显卡:1080ti 问题 实际项目中使用了一个GPU程序,在双卡1080ti机器上运行,程序会自动搜寻并使用0号和1号GPU卡。性能测试要求程序只运行在一张GPU卡上,但程序没有参数设置GPU的地方。 解决方式 采取CUD...

icee 1万+

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Ollama 配置 CUDA_VISIBLE_DEVICES 环境变量以选择 GPU 编号

编号规则使用的编号是nvidia-smi列出的原始编号。重新映射:在程序内部,会使 GPU 1 被当作“GPU 0”来识别。程序只知道它能看到的那部分 GPU。Ollama 多 GPU:当指定多个 GPU(如0,1)时,Ollama 会尝试利用所有可见的 GPU 来分摊模型计算,这通常能提高推理速度,尤其是在运行大型模型时。常见问题:如果设置后 Ollama 仍然在使用错误的 GPU 或者报错,请检查:确保 Ollama 服务是在设置环境变量之后启动的。

学亮编程手记 1973

CUDA_VISIBLE_DEVICES作用

CUDA_VISIBLE_DEVICES详解

pxm_wzs的博客 1万+

【设置gpu设备】os.environ[‘CUDA_VISIBLE_DEVICES‘] 和 torch.cuda.set_device()

【设置gpu设备】os.environ[‘CUDA_VISIBLE_DEVICES‘] 和 torch.cuda.set_device()

Danger的博客 2万+

[885]Tensorflow设置CUDA_VISIBLE_DEVICES来控制GPU的使用

os.environ[“CUDA_DEVICE_ORDER”] = “PCI_BUS_ID” # 按照PCI_BUS_ID顺序从0开始排列GPU设备 os.environ[“CUDA_VISIBLE_DEVICES”] = “0” #设置当前使用的GPU设备仅为0号设备 设备名称为’/gpu:0’ os.environ[“CUDA_VISIBLE_DEVICES”] = “1” #设置当前使用的GPU设备仅为1号设备 设备名称为’/gpu:1’ os.environ[“CUDA_VISIBLE_DEV.

周小董 2534

使用指定GPU训练模型:os.environ[‘CUDA_VISIBLE_DEVICES‘]设置无效问题解决——随笔

使用指定GPU训练模型之os.environ[‘CUDA_VISIBLE_DEVICES‘]设置无效问题解决

qq_40481602的博客 1万+
上一篇: Python用法积累
下一篇: pytorch积累
lscelory
博客等级 码龄9年 36粉丝 27原创
评论 19
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值