Estoy ejecutando el script cifar10_multi_gpu_train.py
con el registro de colocación de dispositivos activado y veo que todas las operaciones se están colocando en la CPU. Cuando lo ejecuto, sale:
Filling queue with 20000 CIFAR images before starting to train. This will take a few minutes.
I tensorflow/core/common_runtime/local_device.cc:25] Local device intra op parallelism threads: 8
I tensorflow/core/common_runtime/direct_session.cc:45] Direct session inter op parallelism threads: 8
Device mapping: no known devices.
I tensorflow/core/common_runtime/direct_session.cc:111] Device mapping:
softmax_linear/biases/ExponentialMovingAverage: /job:localhost/replica:0/task:0/cpu:0
I tensorflow/core/common_runtime/simple_placer.cc:289] softmax_linear/biases/ExponentialMovingAverage: /job:localhost/replica:0/task:0/cpu:0
.....
.....
Me imagino que se supone que la línea Device mapping: no known devices.
enumera los dispositivos asociados con la sesión actual, pero ¿por qué no tiene ningún dispositivo? El guion llama
tf.device('/gpu:0')
.
Mi GPU es Nvidia GeForce GTX 970.
Resuelto esto.
Debo haber construido accidentalmente el paquete python sin el indicador "--config=cuda". Cuando reconstruí con esta bandera, luego pip desinstalé tensorflow, luego reinstalé con el paquete recién creado, funcionó perfectamente.
El mismo problema ocurrió cuando estaba ejecutando el script cifar10_multi_gpu_train.py con el registro de ubicación del dispositivo activado. No tengo idea de qué quiere decir cuando dice "Debo haber creado accidentalmente el paquete de python sin el indicador "--config = cuda", ¿puede decir qué paquete de python reconstruyó?
@GuangmingZhu , en la página de descarga y configuración de TensorFlow, el comando para crear el paquete pip debe ser:
bazel build -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_package
Simplemente olvidé el --config=cuda
.
Comentario más útil
Resuelto esto.
Debo haber construido accidentalmente el paquete python sin el indicador "--config=cuda". Cuando reconstruí con esta bandera, luego pip desinstalé tensorflow, luego reinstalé con el paquete recién creado, funcionó perfectamente.