返回顶部

请叫我杨先生

导航

Pytorch 5.4 GPU

Pytorch GPU 加速 (拥有Nvidia显卡)

查看自己的 torch 版本型号

>>> torch.__version__
'1.10.1+cpu'

假如你的 torch 版本是和我一样的,那么你就需要安装 CUDA11.1的版本 对应表如下:\(CLICK HERE\)

下载安装CUDA

点击这里,找到对应版本进行下载 :\(CUDA\)
安装教程: \(CLICK HERE\)

安装完成,查看自己的GPU 信息

>>> nvidia-smi 
Tue Jan 25 06:44:55 2022       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 495.46       Driver Version: 460.32.03    CUDA Version: 11.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla K80           Off  | 00000000:00:04.0 Off |                    0 |
| N/A   48C    P8    30W / 149W |      0MiB / 11441MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

我们使用的是CUDA 0 ,名字是 Tesla K80 的显卡,显存一共11441MiB , 也就是11G的显存。

没有显卡 (使用Google Colab加速)

这里我推荐使用微软自带的浏览器 MicroSoft Edge (因为你可以直接上他的插件商城下载KeXue上网的插件)

打开扩展商城下载插件Hoxx Vpn:

\(Download\)

随便选择一个可以使用的节点:

进入谷歌云盘使用Colab

\(Colab\)

登录谷歌帐号,没有帐号的先去注册一个,具体注册方法看这篇文章: \(Google\) 注册


使用Pytorch GPU加速

import torch 
from torch import nn 
>>> a = torch.tensor([1.],device="cuda:0")
>>> a  
tensor([1.], device='cuda:0') 
>>> !nvidia-smi #  查看显卡信息
Tue Jan 25 05:45:24 2022       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.32.03    Driver Version: 460.32.03    CUDA Version: 11.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla T4            Off  | 00000000:00:04.0 Off |                    0 |
| N/A   48C    P0    28W /  70W |   1322MiB / 15109MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+
>>> torch.cuda.device_count() 

查看我们所有的GPU信息

def try_gpu(i=0):  
  if torch.cuda.device_count()>=1: 
    return torch.device(f"cuda:{i}") 
def try_all_gpus():  
    """返回所有可用的GPU,如果没有GPU,则返回[cpu(),]"""
    devices = [torch.device(f'cuda:{i}')
             for i in range(torch.cuda.device_count())]
    return devices if devices else [torch.device('cpu')]

try_gpu(), try_gpu(10), try_all_gpus()
(device(type='cuda', index=0),
 device(type='cuda', index=10),
 [device(type='cuda', index=0)])

计算的时候默认调用 cpu

>>> torch.tensor([1.]).device
device(type='cpu')

开启GPU加速

>>> torch.tensor([1.],device='cuda')
tensor([1.], device='cuda:0')

更多可以看沐神d2l文章GPU:CLICK HERE

posted on 2022-01-25 15:19  YangShusen'  阅读(125)  评论(0编辑  收藏  举报