.theanorc 文件中的 Theano 设置在 gpu 和 cuda 之间不同
Theano setting in .theanorc file different beetween gpu and cuda
为了配置 theano,我们在您的主文件夹中创建一个 .theanorc 文件,并添加以下内容以在 GPU 上将 theano 设置为 运行。
[global]
device = gpu
floatx = float32
但有时我在配置中保存 smbd put device = cuda,有什么区别?
据我所知,如果你使用 cuda,它应该工作得更快,因为 cuda 驱动程序将更好地管理 gpu,而不是在计算时为 gpu 获得其他工作
在你的 .theanorc
文件中设置 device=gpu
指示 Theano 使用 cuda
后端。另一方面,设置 device=cuda
指示 theano 使用 libgpuarray
后端。两者都会导致使用 GPU(与在 .theanorc
文件中设置 device=cpu
相比,后者会导致使用 CPU),区别在于 low-level API 他们用它来交流。 libgpuarray
后端是两者中较新的一个,它是一个包装器,允许 Theano 与 cuda
(对于 NVIDIA GPU)和 opencl
(对于 non-NVIDIA GPU)进行通信.
请注意,cuda
后端将在 Theano 的下一个版本中弃用,建议您从此以后始终使用 libgpuarray
后端。
为了配置 theano,我们在您的主文件夹中创建一个 .theanorc 文件,并添加以下内容以在 GPU 上将 theano 设置为 运行。
[global]
device = gpu
floatx = float32
但有时我在配置中保存 smbd put device = cuda,有什么区别? 据我所知,如果你使用 cuda,它应该工作得更快,因为 cuda 驱动程序将更好地管理 gpu,而不是在计算时为 gpu 获得其他工作
在你的 .theanorc
文件中设置 device=gpu
指示 Theano 使用 cuda
后端。另一方面,设置 device=cuda
指示 theano 使用 libgpuarray
后端。两者都会导致使用 GPU(与在 .theanorc
文件中设置 device=cpu
相比,后者会导致使用 CPU),区别在于 low-level API 他们用它来交流。 libgpuarray
后端是两者中较新的一个,它是一个包装器,允许 Theano 与 cuda
(对于 NVIDIA GPU)和 opencl
(对于 non-NVIDIA GPU)进行通信.
请注意,cuda
后端将在 Theano 的下一个版本中弃用,建议您从此以后始终使用 libgpuarray
后端。