instalar - tensorflow python example
TensorFlow: cómo verificar que se está ejecutando en GPU (3)
Hay varias formas de ver la colocación de operaciones.
Agregue RunOptions y RunMetadata a la llamada de sesión y visualice la ubicación de operaciones y cálculos en Tensorboard. Vea el código aquí: https://www.tensorflow.org/get_started/graph_viz
Especifique la opción log_device_placement en una sesión ConfigProto. Este registra para consolar en qué dispositivo se colocan las operaciones. https://www.tensorflow.org/api_docs/python/tf/ConfigProto
Ver el uso de la GPU en la terminal usando nvidia-smi.
Estoy buscando una manera simple de verificar que mis gráficos de TF
estén ejecutando en la GPU.
PD. También sería bueno verificar que se cuDNN
biblioteca cuDNN
.
Cuando importa TF en Python
import tensorflow as tf
Obtendrá estos registros que indican el uso de las bibliotecas de CUDA
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcublas.so.8.0 locally
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcudnn.so.5 locally
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcufft.so.8.0 locally
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcurand.so.8.0 locally
Además, cuando crea un gráfico y ejecuta una sesión con log_device_placement en Config Proto, obtendrá estos registros (muestra que encontró un dispositivo GPU):
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:910] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_device.cc:885] Found device 0 with properties:
name: GeForce GTX 1060 6GB
major: 6 minor: 1 memoryClockRate (GHz) 1.759
pciBusID 0000:01:00.0
Total memory: 5.93GiB
Free memory: 4.94GiB
I tensorflow/core/common_runtime/gpu/gpu_device.cc:906] DMA: 0
I tensorflow/core/common_runtime/gpu/gpu_device.cc:916] 0: Y
I tensorflow/core/common_runtime/gpu/gpu_device.cc:975] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1060 6GB, pci bus id: 0000:01:00.0)
Existe un problema relacionado con el flujo ascendente de TensorFlow . Básicamente, dice que la API de Python aún no expone esa información.
La API C ++ sin embargo lo hace. Por ejemplo, tensorflow::KernelsRegisteredForOp()
. Escribí un pequeño contenedor de Python y luego implementé supported_devices_for_op
aquí (en este commit ).