2016-03-10 6 views
51

Отладка информации Я имею в виду, что TensorFlow показывает в моем терминале загруженные библиотеки и найденные устройства и т. Д., А не ошибки python.Отключить информацию отладки Tensorflow

I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcublas.so locally 
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcudnn.so locally 
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcufft.so locally 
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcuda.so.1 locally 
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcurand.so locally 
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:900] 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_init.cc:102] Found device 0 with properties: 
name: Graphics Device 
major: 5 minor: 2 memoryClockRate (GHz) 1.0885 
pciBusID 0000:04:00.0 
Total memory: 12.00GiB 
Free memory: 11.83GiB 
I tensorflow/core/common_runtime/gpu/gpu_init.cc:126] DMA: 0 
I tensorflow/core/common_runtime/gpu/gpu_init.cc:136] 0: Y 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:717] Creating TensorFlow device (/gpu:0) -> (device: 0, name: Graphics Device, pci bus id: 0000:04:00.0) 
I tensorflow/core/common_runtime/gpu/gpu_bfc_allocator.cc:51] Creating bin of max chunk size 1.0KiB 
... 
+3

проблема с отслеживанием: https://github.com/tensorflow/tensorflow/issues/1258 –

ответ

36

1,0 Update (5/20/17):

В TensorFlow 0.12+, в этом issue, теперь вы можете контролировать ведение журнала с помощью переменной окружения называется TF_CPP_MIN_LOG_LEVEL; он по умолчанию равен 0 (все показанные журналы), но может быть установлен в 1 для фильтрации INFO журналов, 2 для дополнительного отфильтрования журналов WARNING и 3 для дополнительного фильтра ERROR журналов. Смотрите следующий общий пример OS с помощью Python:

import os 
import tensorflow as tf 

os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3' # or any {'0', '1', '2'} 

для предыдущих версий TensorFlow или TF-Learn Logging, видим следующее:

Открыть страницу ниже для получения информации о TensorFlow лесозаготовок; с новым обновлением вы можете установить объем ведения журнала на DEBUG, INFO, WARN, ERROR, или FATAL. Например:

tf.logging.set_verbosity(tf.logging.ERROR) 

Страница дополнительно дополнительно содержит мониторы, которые могут использоваться с моделями TF-Learn. Here is the page.

Этот не блокирует все протоколирование, хотя (только TF-Learn). У меня есть два решения; одно - «технически правильное» решение (Linux), а другое - восстановление TensorFlow.

script -c 'python [FILENAME].py' | grep -v 'I tensorflow/' 

Для других, пожалуйста, см this answer, который включает изменение источника и восстановление TensorFlow.

4

У меня была и эта проблема (на tensorflow-0.10.0rc0), но не удалось исправить проблему регистрации проб носа с помощью предлагаемых ответов.

Мне удалось решить это, прощупывая непосредственно в регистратор тензорного потока. Не самый правильный исправлений, но прекрасно работает и только загрязняет тестовые файлы, которые прямо или косвенно импортировать tensorflow:

# Place this before directly or indirectly importing tensorflow 
import logging 
logging.getLogger("tensorflow").setLevel(logging.WARNING) 
+0

Это не работает для TF 0.11 – Davidmh

+0

Работало для меня, в то время как решение TF_CPP_MIN_LOG_LEVEL этого не делало. Хорошая мысль! –

66

Вы можете отключить все журналы отладки с помощью os.environ:

import os 
import tensorflow as tf 
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3' 

Проверено на ТФ 0,12 и 1.0

+1

Это решило это для меня. Я использую TF 1.0. –

+0

не работает для меня. tf 1.0 – thang

+1

Работает на tf 1.2.0 –