15

我看到许多火炬代码使用:

require cudnn
require cunn
require cutorch

这些包是做什么用的?他们与 Cuda 有什么关系?

4

2 回答 2

13

所有 3 个都用于 torch7 的 CUDA GPU 实现。

cutorch是 torch7 的 cuda 后端,为 torch 中的 CUDA 实现提供各种支持,例如用于 GPU 内存中张量的 CudaTensor。在与 GPU 交互时还添加了一些有用的功能。

cunn在 nn 库上提供了额外的模块,主要是透明地将这些 nn 模块转换为 GPU CUDA 版本。这使得通过 cuda 将神经网络切换到 GPU 变得容易,反之亦然!

cuDNN 是 NVIDIA 的 cuDNN 库的封装,该库是针对 CUDA 优化的库,包含各种快速 GPU 实现,例如卷积网络和 RNN 模块。

于 2016-07-05T09:47:20.303 回答
1

不知道“cutorch”是什么,但据我了解:

Cuda:使用 GPU 的库。

cudnn:在 GPU 上执行神经网络的库(可能使用 Cuda 与 GPU 通信)

来源:https ://www.quora.com/What-is-CUDA-and-cuDNN

于 2016-10-10T17:51:09.173 回答