如何使用 GPU 确保 caffe?
How can I make ensure caffe using GPU?
有什么办法保证caffe使用GPU?我在安装 CUDA 驱动程序后编译了 caffe,并且在 cmake 中没有 CPU_ONLY
标志,并且在编译 cmake 时记录了 CUDA 8.0.
的检测
但是在训练样本时,根据 nvidia-smi
结果,我怀疑它是否使用 GPU。我怎样才能确保?
据我所知,最可靠的方法是正确配置 solver.prototxt 文件。
包括行
solver_mode:GPU
如果您对要在模型的每一层中使用的引擎有任何规范,您还需要确保它们指的是 GPU 软件。
您可以在您的程序中明确使用 Caffe::set_mode(Caffe::GPU);
。
要确保进程正在使用 GPU,您可以使用 ubuntu 中的 nvidia-smi
命令来确定哪个进程正在使用 GPU。
我是用MTCNN做人脸检测(caffe实现):
我使用nvidia-smi
命令显示使用GPU的进程,如果你想按时间间隔查看它使用watch nvidia-smi
。
如下图,我们可以看到进程mtcnn_c(use caffe backend)
正在使用GPU。
对于未来四处搜寻的咖啡流浪者,这终于对我有用了:
caffe.set_mode_gpu()
caffe.set_device(0)
我确实有 solver_mode: GPU
,它会在 gpu 上显示进程,但是使用 nvidia-smi
看到的 'GPU Memory Usage' 不足以适合我的模型(所以我知道出了点问题...)
有什么办法保证caffe使用GPU?我在安装 CUDA 驱动程序后编译了 caffe,并且在 cmake 中没有 CPU_ONLY
标志,并且在编译 cmake 时记录了 CUDA 8.0.
但是在训练样本时,根据 nvidia-smi
结果,我怀疑它是否使用 GPU。我怎样才能确保?
据我所知,最可靠的方法是正确配置 solver.prototxt 文件。 包括行
solver_mode:GPU
如果您对要在模型的每一层中使用的引擎有任何规范,您还需要确保它们指的是 GPU 软件。
您可以在您的程序中明确使用 Caffe::set_mode(Caffe::GPU);
。
要确保进程正在使用 GPU,您可以使用 ubuntu 中的 nvidia-smi
命令来确定哪个进程正在使用 GPU。
我是用MTCNN做人脸检测(caffe实现):
我使用nvidia-smi
命令显示使用GPU的进程,如果你想按时间间隔查看它使用watch nvidia-smi
。
如下图,我们可以看到进程mtcnn_c(use caffe backend)
正在使用GPU。
对于未来四处搜寻的咖啡流浪者,这终于对我有用了:
caffe.set_mode_gpu()
caffe.set_device(0)
我确实有 solver_mode: GPU
,它会在 gpu 上显示进程,但是使用 nvidia-smi
看到的 'GPU Memory Usage' 不足以适合我的模型(所以我知道出了点问题...)