位置: IT常识 - 正文
推荐整理分享torch.cuda常用指令(torch.cuda.is_available()),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:torch.cuda.current_device,torch.cuda.synchronize,torch.cuda.current_device,torch.cuda.current_device,torch.cuda.is_available() false,torch.cuda.synchronize(),torch.cuda.synchronize(),torch cuda false,内容如对您有帮助,希望把文章链接给更多的朋友!
CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。 开发人员可以使用C语言来为CUDA™架构编写程序,所编写出的程序可以在支持CUDA™的处理器上以超高性能运行。
Pytorch通过cuda指令允许让模型、数据加载到GPU上,常用指令如下:1. torch.cuda.is_available()cuda是否可用
import torchprint(torch.cuda.is_available())2. torch.cuda.device_count()查看GPU数量
import torchprint(torch.cuda.device_count())3. torch.cuda.get_device_name()查看DEVICE(GPU)名
import torchprint(torch.cuda.get_device_name())4. torch.cuda.current_device()检查目前使用GPU的序号
import torchprint(torch.cuda.current_device())5. torch.cuda.set_device()指定使用的卡
torch.cuda.set_device(gpu_id) #单卡torch.cuda.set_device('cuda:'+str(gpu_ids)) #多卡只指定主显卡,如下:
import torchtorch.cuda.set_device(1)x = torch.tensor([[1,2,3],[4,5,6]]).cuda()print(x.device)指定特定显卡,如下:
import torchimport osos.environ['CUDA_VISIBLE_DEVICES'] = '0,1,2'torch.cuda.set_device(1)x = torch.tensor([[1,2,3],[4,5,6]]).cuda()print(x.device)使用torch.cuda.set_device()可以更方便地将模型和数据加载到对应GPU上, 在定义模型之前加入一行代码即可,但是这种写法的优先级低,如果model.cuda()中指定了参数,那么torch.cuda.set_device()会失效,而且pytorch的官方文档中明确说明,不建议用户使用该方法。
6. .cuda()指定模型和数据加载到对应的GPU,以net.cuda()为例,加载方法为:
net.cuda(gpu_id) # 输入参数为int类型,只能指定一张显卡net.cuda('cuda:'+str(gpu_ids)) #输入参数为str类型,可指定多张显卡只指定主显卡,如下:
import torchimport os x = torch.tensor([[1,2,3],[4,5,6]]).cuda()print(x.device)指定特定显卡,如下:
import torchimport osos.environ['CUDA_VISIBLE_DEVICES'] = '0,1,2'x = torch.tensor([[1,2,3],[4,5,6]]).cuda('cuda:1')print(x.device)上一篇:SpringBoot简单优雅实现图片上传功能(超详细)(springboot jni)
下一篇:Redux工具包(一) - Redux Toolkit的基本使用(redux-tookit)
友情链接: 武汉网站建设