如何在没有分配的情况下列出可见的Tensorflow设备?

时间:2017-10-13 17:04:33

标签: python tensorflow gpu tensorflow-gpu

可以通过以下方式将目前可见的设备列入Tensorflow:

from tensorflow.python.client import device_lib
LOCAL_DEVICES = device_lib.list_local_devices()

(见:How to get current available GPUs in tensorflow?

然而,这似乎初始化并分配这些GPU。如何在不分配设备的情况下列出设备?

1 个答案:

答案 0 :(得分:2)

对于GPU设备,TensorFlow list_local_devices()函数是CUDA APIcuDeviceGetCount()cuDeviceGet()cuDeviceGetProperties()函数的包装器。 (此外,通常有一个“CPU设备”使用本地系统中的所有核心。)

最简单的解决方案可能是直接调用这些CUDA API。这个script显示了如何使用ctypes从Python执行此操作。