我在后端使用带有 tensorflow-gpu 的 Keras,我没有安装 tensorflow(CPU - 版本),所有输出都显示 GPU 被选中,但 tf 正在使用 CPU 和系统内存
当我运行我的代码时,输出是:output_code
我什至运行了 device_lib.list_local_device() 并且输出是:list_local_devices_output
运行代码后,我尝试使用 nvidia-smi 来查看 gpu 的使用情况,输出为:
nvidia-smi output
Tensorflow-gpu = "1.12.0"
CUDA toolkit = "9.0"
cuDNN = "7.4.1.5"
环境变量包含:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin;
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\libnvvp;
C:\WINDOWS\system32;
C:\WINDOWS;
C:\WINDOWS\System32\Wbem;
C:\WINDOWS\System32\WindowsPowerShell\v1.0\;
C:\WINDOWS\System32\OpenSSH\;
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;
D:\Anaconda3;D:\Anaconda3\Library\mingw-w64\bin
D:\Anaconda3\Library\usr\bin;
D:\Anaconda3\Library\bin;
D:\Anaconda3\Scripts;D:\ffmpeg\bin\;
但是当我在任务管理器中检查内存使用情况时,输出仍然是
CPU 利用率 51%,RAM 利用率 86%
GPU 利用率 1%,GPU-RAM 利用率 0%
Task_manager_Output
所以,我认为它仍然使用 CPU 而不是 GPU。
系统配置:
Windows-10 64 bit; IDE: Liclipse; Python: 3.6.5
最佳答案
正如您在日志中看到的那样,它正在使用 GPU。
问题是,很多事情在 GPU 上是无法完成的,只要你的数据很小,你的复杂度低,你最终会得到低 GPU 使用率。
Here是一些更详细的解释。
关于python-3.x - 为什么 Tensorflow-gpu 还在使用 cpu,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53887816/