CPU与GPU的区别及通信时间简要分析

CPU与GPU的区别
CPU就好比一个全能的教授,个人能力超级突出,可以处理各种各样的问题,但是在一些单计算的角度,尤其是深度学习发展所需要的大量的矩阵运算时,性能不如GPU,原因还是在与GPU设计走的小而简单化,而CPU走的是大而全的方向,所以往往在提到两者的时候会说在计算密集型的时候GPU会彰显更多的优势。
随便闲扯一句,GPU能够适用于显卡计算,那么TPU是干嘛的勒,是不是Google抢占计算硬件市场,哈哈哈,不能让老黄一家独大啊,现在1080Ti都下架了,强推2080Ti,这平民玩家玩不起泰塔啊。。。

CPU/GPU区别对比

  • CPU/GPU之间传输数据时间比较(Pytorch代码)
# -*- coding: utf-8 -*-

"""运行环境
Python:3.6
torch:1.0.1
3*1080Ti
"""

from __future__ import print_function
import torch
import time

cuda1 = torch.device('cuda',1)
cpu = torch.device('cpu', 0)
# 测试从CPU到GPU数据加载时间
s = time.time()
for _ in range(100000):
    a = torch.randn((2,3), device=cpu)
    a.to(cuda1)
print('cpu --> gpu cost time is', time.time()-s)

# 测试从GPU到GPU数据加载时间
cuda1 = torch.device('cuda',1)
cuda2 = torch.device('cuda',2)
s = time.time()
for _ in range(100000):
    a = torch.randn((2,3), device=cuda2)
    a.to(cuda1)
print('gpu --> gpu cost time is', time.time()-s)


  • 结果
cpu --> gpu 耗时较少,1.5s  # CPU直接分发数据到GPU
gpu --> gpu 之间耗时大概为前者的2倍,3s左右  # GPU与GPU应该还是通过CPU作为中间人通信的
# !硬件差异可能会导致不同的结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值