Python torch:使用net:cuda()和使用cudnn.somemodules有什么区别?
我想知道以下两者之间的区别:Python torch:使用net:cuda()和使用cudnn.somemodules有什么区别?,python,pytorch,Python,Pytorch,我想知道以下两者之间的区别: 制作神经网络后使用net:cuda(): 在完成神经网络的过程中使用cudnn.somemodules: :cuda()将使用GPU cudnn.xxx将对GPU模型进行一些优化,因此添加后的培训将比仅使用cuda更快 有一个关于cudnn的介绍::cuda()是使用GPU的 cudnn.xxx将对GPU模型进行一些优化,因此添加后的培训将比仅使用cuda更快 有一个介绍cudnn:cuda()是一个将张量移动到GPU以加快运算速度的调用 cudnn是一个cuda优
net:cuda()
:cudnn.somemodules
::cuda()
将使用GPU
cudnn.xxx
将对GPU模型进行一些优化,因此添加后的培训将比仅使用cuda更快
有一个关于cudnn的介绍::cuda()
是使用GPU的
cudnn.xxx
将对GPU模型进行一些优化,因此添加后的培训将比仅使用cuda更快
有一个介绍cudnn
:cuda()
是一个将张量移动到GPU以加快运算速度的调用
cudnn
是一个cuda优化模块库,类似于nn
。如果在GPU上工作,使用cudnn
anagues会更快,但您的代码将无法移植到CPU设备:
NVIDIA CUDA深度神经网络(cuDNN)是一个GPU加速的深度神经网络原语库。它提供了DNN应用程序中经常出现的例程的高度调优的实现。这些发行说明描述了cuDNN 8.1.1和早期版本的主要功能、软件增强和改进以及已知问题
cuda()
是一个将张量移动到GPU的调用,用于更快地计算运算
cudnn
是一个cuda优化模块库,类似于nn
。如果在GPU上工作,使用cudnn
anagues会更快,但您的代码将无法移植到CPU设备:
NVIDIA CUDA深度神经网络(cuDNN)是一个GPU加速的深度神经网络原语库。它提供了DNN应用程序中经常出现的例程的高度调优的实现。这些发行说明描述了cuDNN 8.1.1和早期版本的主要功能、软件增强和改进以及已知问题
local net = nn.Sequential()
net:add(nn.SpatialConvolution(3, 8, 5, 5))
net:add(nn.View(8*20*20))
net:add(nn.Linear(8*20*20, 10))
net:add(nn.LogSoftMax())
net:cuda()
local net = nn.Sequential()
net:add(cudnn.SpatialConvolution(3, 8, 5, 5))
net:add(cudnn.View(8*20*20))
net:add(cudnn.Linear(8*20*20, 10))
net:add(cudnn.LogSoftMax())